每一个函数我都要判断$_session['language']的值,可以怎么优化?
public function geta(){ if($_session['language']==tc){ $sql=select a_tc from table; }elseif($_session['language']==en){ $sql=select a_en from table; } } public function getb(){ if($_session['language']==tc){ $sql=select b_tc from table; }elseif($_session['language']==en){ $sql=select b_en from table; } }
回复讨论(解决方案) 即然language是字段的一部分,直接拼接成sql就行了
你可以优化表,设置一个语言字段,通过$_session['language']取数据:
select content from table where language = $_session['language']
这样不管后面来多少种语言都迎刃而解了,可扩展性好
$sql = select a_$_session[language] from table;
但需要指定默认值,第一次进入时是没有 $_session['language'] 的
不过你的代码也没有进行处理
#2 的方案是不妥当的
1、冗余量太大
2、不易产生对照