在zen cart系统里面,我们都经常看见$_SESSION[‘languages_id’]这个变量,特别是涉及到输出的字段有多语言的时候就要使用这个变量来限制查询的字段了。这个变量保存的是当前系统所选择的语言类型的ID值,默认的是英语,那这个值就是1,如果添加多种语言后这个值就会跟据不同的语言而变化,其实它就是该语言的数据库表languages的languages_id字段。
该变量在includes\init_includes\init_languages.php文件中被初始化,这个是一个系统必须加载的文件,也是一个必须初始化的变量,系统中加载了application_top.php这个文件以后,在模板文件或者模块文件里面都可以直接使用$_SESSION[‘languages_id’]这个变量。
关于语言的初始化信息有:
$_SESSION[‘language’] = (zen_not_null($lng->language[‘directory’]) ? $lng->language[‘directory’] : ‘english’);///该语言所的语言包目录,默认就是english这个目录
$_SESSION[‘languages_id’] = (zen_not_null($lng->language[‘id’]) ? $lng->language[‘id’] : 1);//语言所属的ID
$_SESSION[‘languages_code’] = (zen_not_null($lng->language[‘code’]) ? $lng->language[‘code’] : ‘en’);//该语言的标识代码,比如英语就是en
在系统的其他地方都可以直接使用这几个变量,他们的使用范围是当前的session。