当前位置:Gxlcms > PHP教程 > php多语言sql要怎么写

php多语言sql要怎么写

时间:2021-07-01 10:21:17 帮助过:9人阅读

每一个函数我都要判断$_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、不易产生对照

人气教程排行