smmoosavi / twig-php-gettext
此包的最新版本(v1.0.0)没有提供许可证信息。
smmoosavi/php-gettext 的 Twig 扩展。
v1.0.0
2014-06-08 19:21 UTC
Requires
- php: >=5.3.0
- smmoosavi/php-gettext: ~1.0
- twig/twig: ~1.0
This package is not auto-updated.
Last update: 2024-09-24 02:44:00 UTC
README
smmoosavi/php-gettext 的 Twig 扩展。
如何安装
使用 Composer
在项目根目录创建一个 composer.json 文件
{
"require": {
"smmoosavi/twig-php-gettext": "dev-master"
}
}
然后运行以下 composer 命令
$ php composer.phar install
注意: twig 和 php-gettext 也会与 twig-php-gettext 一起安装。
如何使用
完成对 twig 和 php-gettext 的所有要求,并添加以下行
$twig->addExtension(new smmoosavi\util\twiggettext\Extension_L10n());
现在您可以在模板中使用 __、trans。
完整示例
<?php // test.php require_once '../vendor/autoload.php'; use smmoosavi\util\gettext\L10n; // initializing php-gettext $locale = 'fa_IR'; $lang = 'fa'; L10n::init($lang, __DIR__ . "/locale/$locale/LC_MESSAGES/messages.mo"); // simple using of php-gettext echo __('Hi')."\n"; // initializing twig $loader = new Twig_Loader_String(); $twig = new Twig_Environment($loader); // initializing twig-php-gettext $twig->addExtension(new smmoosavi\util\twiggettext\Extension_L10n()); // using of twig-php-gettext echo $twig->render("{{ __('Hi') }} {{ name }}<br>", array('name' => 'علی'));
参考
函数
trans('Hi')__('Hi')
过滤器
'Hi'|trans'Hi'|__
标签
transpluralendtrans
示例
模板
{% trans %}
Hi
{% endtrans %}
.po 文件中的翻译
msgid "Hi"
msgstr "سلام"
模板
{% trans %}
Dear {{name}},
{% endtrans %}
.po 文件中的翻译
msgid "Dear %name%,"
msgstr "%name% عزیز،"
模板
{% trans %}
an apple.
{% plural apple_count %}
{{ count }} apples.
{% endtrans %}
.po 文件中的翻译
msgid "an apple"
msgid_plural "%count% apples"
msgstr[0] "یک سیب"
msgstr[1] "%count% سیب"