tpc/pirates-translator

此包提供高性能的动态本地化,具有懒加载功能

1.0.0 2022-08-25 11:41 UTC

This package is auto-updated.

Last update: 2024-09-29 05:43:21 UTC


README

海盗翻译器包为您的 Laravel 应用程序添加快速且动态的翻译功能。

安装

1. 需求包

composer require tpc/pirates-translator

2. 添加数据库凭证

创建一个新的数据库并将您的数据库凭证添加到 .env 文件中

DB_HOST=localhost
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret

3. 运行安装程序

php artisan piratetranslator:install

现在安装已完成。

使用方法

添加新语言区域

$locale = 'ckb';
PirateTranslator::addLanguage($locale)

添加新翻译

$newTranslation = [
  'locale' => 'ckb',
  'table_name' => 'user',
  'column_name' => 'name',
  'phrase_key' => 'raman',
  'value' => 'Raman Koye'
];

PirateTranslator::addTranslation($newTranslation);

更新翻译

$updateTranslation = [
  'id' => 'ckb', // id is required*.
  'value' => 'Raman Zana' //include other fields/columns that you want to update.
];

PirateTranslator::updateTranslation($updateTranslation);

批量插入

$blukTranslation = [
  [
    'locale' => 'ckb',
    'table_name' => 'user',
    'column_name' => 'name',
    'phrase_key' => 'raman',
    'value' => 'Raman Koye'
  ],
  [
    'locale' => 'ckb',
    'table_name' => 'user',
    'column_name' => 'name',
    'phrase_key' => 'aram',
    'value' => 'Aram Taher'
  ]
];

PirateTranslator::blukInsert($blukTranslation);

访问

使用 Laravel 本地化辅助函数。键格式 `table_name.phrase_key.column_name`

\\ table_name = user
\\ phrase_key = raman
\\ column_name = name
\\ value = Raman Zana

__('pirates.user.ahmed.name'); //output: "Raman Zana"

刷新缓存

  • 所有语言区域。
piratetranslator:cache
  • 单个语言区域。
piratetranslator:cache {locale}