deployteam/laravel-polytranslate

为 Laravel 本地化命名空间添加多个位置

v0.2.0 2020-04-27 11:59 UTC

This package is auto-updated.

Last update: 2024-09-05 22:44:44 UTC


README

Latest Version on Packagist Software License Total Downloads Build Status

安装

使用以下命令通过 composer 安装此包

composer require deployteam/laravel-polytranslate

更新 composer 后,将服务提供者添加到 config/app.php 中的 providers 数组

DeployTeam\PolyTranslate\ServiceProvider::class,

如果您想使用外观,请将其添加到 app.php 的外观中

'PolyTranslate' => DeployTeam\PolyTranslate\Facade::class,

>= Laravel 5.5 使用包自动发现,因此无需手动添加 ServiceProvider 和 Facade。

用法

使用 PolyTranslate,您可以添加多个路径以加载语言

PolyTranslate::addPath(['themes/base/lang', 'themes/child/lang']); // without namespace
PolyTranslate::addNamespace('theme', ['themes/base/lang', 'themes/child/lang']); // with namespace

Laravel 将开始搜索语言目录,并将合并找到的内容。

// themes/base/lang/en/header.php
return [
    'greetings' => 'Hello',
    'login' => 'Login'
];
// themes/child/lang/en/header.php
return [
    'login' => 'Authenticate',
    'register' => 'Register'
];

最终结果将是

[
    'greetings' => 'Hello',
    'login' => 'Authenticate',
    'register' => 'Register'
]

要使用翻译,只需使用 Laravel 内置功能即可

@lang('header.greetings') <!-- Without namespace -->
@lang('theme::header.greetings') <!-- With namespaces -->

许可证

Laravel PolyTranslate 是开源软件,许可协议为 MIT 许可协议