include实现国际化
将index.php进行翻译:
Index内容
1. Index
2. About us
我们可以将index.php设置为一个翻译模版,所有出现字符的地方,都定义为变量,如1,2部分设置为翻译的变量$menu_index, $menu_aboutus.
多种语言就有多种语言包,可以做成配置文件,比如en.inc.php cn.inc.php 等等
内容如下:
cn.inc.php
$menu_index='首页';
$menu_aboutus='关于我们';
en.inc.php
$menu_index='index';
$menu_about_us='about_us';
那么index.php根据参数的不同进行include不同的语言包,就翻译成相应的语言。
include方式 与 gettext() 比较
Gettext 优点:
Gettext()是实现i18n国际化,由于现在i18n越来越趋于国际化标准,得到广泛的支持,
缺点:
1.Php6版本之前还未完全的支持unicode,所以只支持常用的部分语言。
2.对已经存在的mo语言包文件进行了修改,得重启apache。
include方式 优点:
国际化实现简单,能支持所有语言。
缺点:
对要进行翻译的页面进行变量格式化,也就是做成一个翻译模版。比较繁杂。
php gettext方式实现UTF-8国际化多语言(i18n):
http://blog.csdn.net/wangking717/archive/2009/10/28/4739465.aspx