中英⽂phpcms,phpcmsv9英语语⾔包应⽤详解
phpcms英⽂⼆次开发之语⾔包详解
phpcms英⽂的语⾔包使其成为国际化的cms,从PHPCMS v9.1开始,发布了英⽂版。但很遇憾的是,到⽬前为⽌,PHPCMS还没有实现语⾔切换的功能,⽐如中英语⾔切换等。我认为PHPCMS实现了语⾔的切换功能才能称得上真正意义国际化cms。虽然如此,和国内的其它CMS相⽐,PHPCMS已经是最为国际化的了。
phpcms v9英语语⾔包位置:
php语言处理什么的1、phpcms\languages\zh-cn    中⽂语⾔包
2、phpcms\languages\en    英⽂语⾔包
phpcms v9英⽂语⾔包建⽴
在phpcms v9⼆次开发之模型类的应⽤,讲到了⾜球等级的模型类的应⽤,现在为其添加⼀个中⽂语⾔包,其步骤如下:
1、phpcms\languages\zh-cn  ⽬录下新建⼀个⽂件level.lang.php,注意“level”与模块名称相对应。
2、在level.lang.php写上如下代码:
复制代码代码如下:
$LANG['level_name'] = '等级';
$LANG['edit_level'] = '编辑等级';
$LANG['operations_manage'] = '管理操作';
$LANG['allselect'] = '全选';
$LANG['level_deleted'] = '等级批量删除完成!';
>
到此,⼀个语⾔包就建⽴完了,真的很简单,接下来我我来看⼀下它的应⽤。
模块语⾔包⼀般是⽤在与之相应的模块的模板上,好⽐⼀个局部变量,系统语⾔包适⽤所有模块模板,就像全局变量⼀样。下⾯是⾜球级别后台列表模板代码⽚断:
复制代码代码如下:
<?php echo L('allselect')?>id<?php echo L('level_name')?><?php echo L('operations_manage')?>
我们上⾯定义的语⾔包中"$LANG['level_name'] = '等级';",就是作为函数“ L('level_name')”的参数,其输出的数据为“等级”。
当然,我们也不⼀定⾮要建⽴语⾔包,⾮正式的话也可以直接赋与参数,如:
<?php echo L('level_name')?>”,可以写成“<?php echo L("等级")?>”,甚⾄可以更直接写成等级
phpcms v9英语语⾔包的作⽤
上⾯说过,语包的写法和其它替代写法,当然,参数字节⼩的话可以直接给L()函数赋与参数,但是如果参数字节太⼤呢?这样在模板上就显得凌乱了。语⾔包⼀经定义,可以重复在多个模板上使⽤。前⾯也提到,甚⾄可以不⽤语⾔包和“L()"函,直接写,不过不建议这样,⼀般来说不会有什么问题,但我在调试过程中偶尔也会出现⼀些意想不到的乱码。显然语⾔的作⽤有:
1、开发国际版CMS
2、使模板整洁美观
3、⽅便模板修改,减少⼯作量
4、杜绝因为编码⽽引起的乱码问题

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。