In this paper, the CodeIgniter multi language implementation method is analyzed.Share for you for your reference, the following:
在CI
应用程序目录中,有一个用于
配置多种
语言的语言包目录:
复制代码如下:{ } = 'language美元配置;
定义语言
文件 有一个空的英文目录下的语言,即上述定义的
系统默认语言目录,并且系统会从目录中加载语言包文件。如果你想定义一个不同的语言包,如zh_cn,你创造的zh_cn目录并配置相应的语言包文件。注意语言文件
后缀必须_lang.php语言
翻译通过按键实现数组,为了防止重复键,可以增加关键统一前缀。
该配置可
参考如下:
{ } =美元'menu_system_title郎系统
设置;
{ } = 'menu_system_user_admin郎美元的
用户管理;
{ } = 'menu_system_user_list郎美元的用户列表;
{ } =美元'menu_system_user_detail郎用户信息;
{ } = 'menu_system_setting郎美元配置管理;
文件结束user_menu_lang.php / * * /
位置: /系统/语言/ zh_tw / / / * user_menu_lang.php
语言包的使用
在使用语言包之前,您需要加载语言包,加载和使用该语言的方式如下:
加载 / /加载,不需要_lang
美元->荷载->语言(阵列('user_menu ','user_message '));
加载
模式2
美元->朗->负荷('user_menu);
使用 /
echo $这->朗->线('language_key);
使用两个(需要加载语言帮助
函数)
美元->荷载->帮手('language);
Echo Lang('menu_system_title);
可以说,语言包的使用是相当简单的,而且台湾版的系统早就已经制作好了。顺便说一下,CI语言包的使用及需要注意的问题。
1、什么配置'language'} {美元被配置为zh_cn直接
在系统/语言/英语目录默认语言包,这将加载相应的语言包时,有些类是用于
报告错误。此时,系统会去语言/ zh_cn目录第一,然后看它,然后去系统/语言/ zh_cn目录找到它。如果找不到它,就找不到语言包错误。因此,如果您更改了语言配置,最好将系统下的文件复制到相应的语言目录中。
这里看起来有点奇怪。为什么不是这种思维方式呢第一次去语言/ zh_cn目录找到它,然后你不能在系统/语言/英文目录找到它,它可能不适合电话英语,它应该被称为系统的默认语言包。
2。你需要使用语言包吗
这种
情况在一个系统中,在语言包的一些错误,有的直接用
中文,
原因可能是因为许多人的发展,关键的命名也不规范,往往需要比较相应的语言文件,导致程序读中文比较麻烦,是不是系统的问题,对语言包,个人也觉得有点麻烦。因此,不需要考虑语言程序尽可能不使用语言包。
三.如何自动
检测语言包
通常,它可以根据浏览器的语言类型来判断。_server美元'http_accept_language'} {在PHP中可以得到的价值,然后获取客户端浏览器的默认语言类型根据字符串分离或正则匹配的方式得到它后,把代码复制如下:美元->配置-> set_item('language ','zh_cn ');设置。
是否使用语言包,可以^ _ ^推翻郎函数是使用语言包,请参考以下:
函数的郎(合线阵列
参数=(美元))
{
CI = get_instance(美元);
$行=行(行);
如果(is_array(美元的)计数($参数)> 0){
array_unshift($参数,$线);
$线= call_user_func_array('sprintf ',为参数);
}
返回的^ _ ^美元线;
}
在许多情况下,多语言实现是以数组的形式实现的。也有。莫格式,l18n的多语言实现,PHP需要php_gettext
扩展支持,
详情可咨询。
更多的读者感兴趣的CodeIgniter相关内容可以看看
网站:的CodeIgniter入门
教程和CI(CI)框架。
希望本文有助于基于CodeIgniter框架PHP程序设计人。