technicalguru / i18n
为PHP应用程序提供本地化功能
v1.0.6
2021-06-12 14:02 UTC
Requires
- php: >=7.0.0
Requires (Dev)
- phpunit/phpunit: ^9
README
为PHP应用程序提供本地化功能。它读取应用程序的本地i18n文件,并提供了对应键的本地化值。
许可证
本项目采用GNU LGPL 3.0许可。
安装
通过Composer
composer install technicalguru/i18n
通过包下载
您可以从GitHub发布页面下载源代码包。
如何使用
创建本地化文件
创建一个名为i18n.php的文件,并放置在应用程序可以访问到的位置。
<?php
/** Put here your language translations */
return array(
'welcome' => array(
'de' => 'Willkommen!',
'en' => 'Welcome!',
),
);
初始化I18N
告诉I18N它在何处可以找到本地化文件以及默认语言。
use TgI18n\I18n;
I18N::$i18nFile = '/my/path/to/i18n.php';
I18N::$defaultLangCode = 'de';
默认初始化
如果本地化文件位于以下位置之一,则无需告诉I18N它们的位置。文件需要命名为i18n.php。
- 由
$_SERVER['CONTEXT_DOCUMENT_ROOT']定义的Web上下文根目录 - 由
$_SERVER['DOCUMENT_ROOT']定义的Web根目录 - 正在运行的脚本文件的当前目录(即正在执行的文件)
当默认语言代码为en时,无需初始化默认语言代码。
翻译值
现在您已经设置好了使用本地化
use TgI18n\I18n;
echo I18N::_('welcome');
echo I18N::_('welcome', 'en');
echo I18N::_('welcome', 'de');
_($key)静态方法始终返回一个值。如果找不到给定的键,则返回该键本身。
如果您希望返回NULL,则使用__($key)
use TgI18n\I18n;
echo I18N::__('welcome');
echo I18N::__('welcome', 'en');
echo I18N::__('welcome', 'de');
贡献
在GitHub问题跟踪器中报告错误、请求增强或发送拉取请求。