alessiodh / deepltranslator
使用DeepL API翻译laravel项目中的所有文件,并将其导出到指定的语言
v1.0.3
2021-06-20 08:41 UTC
Requires
- ext-json: *
- guzzlehttp/guzzle: ^7.3
Requires (Dev)
- ext-json: *
- guzzlehttp/guzzle: ^7.3
This package is auto-updated.
Last update: 2024-09-13 20:00:58 UTC
README
使用DeepL API翻译laravel项目中的所有文件,并将其导出到指定的语言
安装
可以通过composer安装
composer require alessiodh/deepltranslator
发布配置文件
php artisan vendor:publish --provider="Alessiodh\Deepltranslator\DeeplTranslatorServiceProvider"
用法
命令
php artisan deepl:translate {源语言} {目标语言} {--filename} {--json}
源语言文件将被检索到 /lang/{源语言}/
特性
特性可用于即时将单个字符串翻译成多种语言
示例
翻译所有文件
php artisan deepl:translate en nl
此命令将翻译 /lang/en
目录中的所有PHP文件。如果映射 nl
不存在,它将创建它,并将所有翻译根据从 源语言
检索到的文件进行放置。
单个文件
php artisan deepl:translate en nl --filename=auth.php
这将与翻译所有文件完全相同,但只会考虑一个文件。
特性使用
namespace App\Http\Controllers; use Alessiodh\Deepltranslator\Traits\DeepltranslatorTrait; class MyTestController extends Controller { use DeepltranslatorTrait; public function home(){ $translated = $this->translateString('This is a test', 'en', ['fr','nl','ru']); /* $translated = [ "fr" => "Il s'agit d'un test", "nl" => "Dit is een test", "ru" => "Это тест" ]; */ } }
即将到来的更改
目前,此包不支持Laravel支持的所有选项。以下选项将很快添加:
- 翻译文件中的复数形式
- 翻译中的数字if语句
- 数据库翻译
- 使用JSON文件作为翻译文件而不是PHP