aureliopons/lagan_translate

用于Slim框架中Illuminate\Translation\Translator的Twig函数。基于dkesberg/slim-twig-translation-extension

dev-master 2017-08-18 12:43 UTC

This package is not auto-updated.

Last update: 2024-09-29 03:15:30 UTC


README

本仓库提供了一个用于twig视图解析器的扩展类。该类为twig模板添加了一个翻译辅助函数。翻译函数尝试调用Slim DI容器中Illuminate\Translation\Translator对象的trans()函数。

是对dkesberg/slim-twig-translation-extension对Slim 3框架的适配。

旨在与Lagan CMS (https://www.laganphp.com/)一起使用

如何安装

使用 Composer

在项目根目录创建一个composer.json文件

{
    "require": {
        "aureliopons/lagan_translate": "dev-master"
    }
}

然后运行以下composer命令

$ php composer.phar install

如何使用

Twig模板

在您的twig模板中,您将写入

  {{ translate('male') }}

您还可以使用简写

  {{ _('male') }}

添加到Lagan

在public/index.php中添加

$view->addExtension( new \Aureliopons\Slim\Twig\Extension\TranslationExtension() );

并且使用简单的注入,使用ROOT_PATH来引用'lang'文件夹

use Illuminate\Translation\Translator;
use Illuminate\Filesystem\Filesystem;
use Illuminate\Translation\FileLoader;

$translator = new Translator(new FileLoader(new Filesystem(), ROOT_PATH . '\lang'), 'en');
$translator->setFallback('en');
$app->translator = $translator;

然后您可以在\lang\en文件夹中创建您的翻译数组

return array(
  'hello'    => 'Hello World!'  
);

为不同的语言添加新的文件夹。