PHP中使用gettext解决国际化问题的例子(i18n)

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了PHP中使用gettext解决国际化问题的例子(i18n)脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

实现国际化的方式比较多,很多PHP framework都内置i18n支持,但大部分是基于PHP的数组实现的,这种方法并不推荐。目前最为流行也最通用的方法是gettext。

Gettext 用于系统的国际化(I18N)和本地化(L10N),可以在编译程序的时候使用本国语言支持(Native Language Support(NLS)),其可以使程序的输出使用用户设置的语言而不是英文. 关于gettext的更多资料请参见: 下面说说如何利用gettext在你的PHP程序中实现国际化。


一、检查环境需求

首先查看PHPinfo(),确保你的PHP启用了gettext扩展。如果启用了gettext,在PHPinfo页面应该能看到以下信息:
@H_301_9@

PHP中使用gettext解决国际化问题的例子(i18n)

如果没有找到,请修改PHP.ini以启用该扩展

二、为你的项目新建locale文件

gettext涉及到两个文件,*.po是翻译文件,里面储存了项目中所有待翻译的字符串和翻译后的结果;*.mo文件是po文件编译后二进制文件,真正读取翻译信息的时候是从mo文件中读取的,所以这个文件也是必不可少的。 gettext对目录要求比较死,你必须把国际化文件放在指定目录,大部分使用gettext不成功都是由于po文件和mo文件没有放对位置导致的,下面举例看一个典型项目目录树:

@H_301_9@

PHP中使用gettext解决国际化问题的例子(i18n)

三、初始化i18n环境

这个主要是在程序端进行简单的设置,下面给个简单的例子:

代码如下:@H_126_33@

脚本宝典总结

以上是脚本宝典为你收集整理的PHP中使用gettext解决国际化问题的例子(i18n)全部内容,希望文章能够帮你解决PHP中使用gettext解决国际化问题的例子(i18n)所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。