orangelaravel/language

Laravel 语言包

v1.2.2 2022-10-27 15:01 UTC

This package is auto-updated.

Last update: 2024-09-27 19:27:08 UTC


README

这是一个用于处理语言文件翻译的小型库。

该库可以

  • 添加
  • 编辑
  • 显示
  • 删除

添加 artisan 命令

  • 显示语言列表
  • 添加新语言

安装

composer require orangelaravel/language

要在文件 app\Console\Kernel 中使用 artisan 命令,需要添加以下内容:

protected $commands = [
  LanguageAdd::class,
  LanguageList::class
];

使用

  1. 创建新语言
php artisan language:add en
  1. 添加新翻译
Language::set('service.id.name', 'nameMyService', 'en');
  1. 读取新翻译
$myValue = Language::get('service.id.name', 'en');

// nameMyService

或者

$myValue = __('service')['id']['name'];

// nameMyService 

第二种方法只有在选择了正确的语言时才会正确工作,因为默认情况下无法指定获取翻译的语言。

  1. 编辑(重写)
Language::set('service.id.name', 'nameMyNewService', 'en');
  1. 删除
Language::delete('service.id.name', 'en');

工作原理

在第一点中,我们创建一个以语言命名的文件:resources/lang/en.json

在添加或重写翻译时,文件将被编辑并呈现为以下形式:

{
    "service": {
        "id": {
            "name": "nameMyService"
        }
    }
}