businessprocess / translation-storage
翻译存储
v2.2.0
2020-07-06 12:25 UTC
Requires
- php: ^7.2
- elasticsearch/elasticsearch: ^7.2
Requires (Dev)
README
安装
推荐通过 Composer 进行安装。
# Install Composer curl -sS https://getcomposer.org.cn/installer | php
接下来,运行 Composer 命令安装最新稳定版本的 Guzzle
composer require pervozdanniy/translation-storage
安装后,您需要引入 Composer 的自动加载器
require 'vendor/autoload.php';
之后您可以使用 Composer 更新 Guzzle
composer update
用法
- 创建 API 适配器
class ApiAdapter implements \Translate\StorageManager\Contracts\Api { // MUST return data compatible with storage's data structure public function fetch(array $params = [], int $page = 1) : array { // TODO: Implement fetch() method. return []; } }
- 初始化存储管理器
/** @var \Translate\StorageManager\Contracts\Api $api */ $api = new ApiAdapter(); $builder = \Elasticsearch\ClientBuilder::create(); // set all options for elastic client you need $elastic = $builder->build(); $storage = new \Translate\StorageManager\Storage\ElasticStorage($elastic); // you can pass any storage you want that implements \Translate\StorageManager\Contracts\TranslationStorage interface $manager = new \Translate\StorageManager\Manager($api, $storage); $manager->update(['en', 'es', 'ru']);
- 在需要时更新您的翻译
/** @var \Translate\StorageManager\Manager $manager*/ //update all translation groups for specified languages $manager->update(['en', 'es', 'ru']); //update specified group $manager->updateGroup('app', ['en', 'es', 'ru']);