milkycode/deepltranslator
Composer 安装命令:
composer require milkycode/deepltranslator
包简介
Will translate all files inside a laravel project using the DeepL API and exports it to the requested language
README 文档
README
Will translate all files inside a laravel project using the DeepL API and exports it to the requested language
Installation
Installation can be done through composer
composer require milkycode/deepltranslator
Publishing the config file
php artisan vendor:publish --provider="milkycode\Deepltranslator\DeeplTranslatorServiceProvider" --force
Add API Key to .env file or in config/deepltranslator.php
DEEPL_API_KEY=XXXXXXXXXXXXXXXXXXXXXXX
Add API mode (pro or free) to .env file or in config/deepltranslator.php
DEEPL_PRO_API=false|true
Usage
Command
php artisan deepl:translate {from} {to} {--filename} {--json}
| Option | Description | Required |
|---|---|---|
| from | The from language where the translations will be taken from | Yes |
| to | The language you want to translate to | Yes |
| filename | In case you want to translate a single file this option can be set | No |
| json | In case this flag is set , it will search for json translation files instead of PHP | No |
The from language files will be retrieved inside /lang/{from}/
Trait
The trait can be used to translate a single string to multiple languages on-the-fly
Limitations
- You can only have max 128kb per translate call including all parameters.
- In the DeepL free plan you can only translate a maximum of 500k characters per month.
- If you translate files, a maximum of 50 files per translate call, can be translated.
Examples
Translating all files
php artisan deepl:translate en nl
This command will translate all php files inside the /lang/en directory. If the map nl is not existing, it will create it and put all translations according to the files retrieved from the from language.
Single file
php artisan deepl:translate en nl --filename=auth.php
This will do exactly the same as translating all files but instead will only take 1 file inconsideration.
Trait usage
namespace App\Http\Controllers; use milkycode\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" => "Это тест" ]; */ } }
Upcoming changes
Currently not all options that Laravel supports are supported inside this package. Following options will be added soon:
- Pluralization inside translation file
- Numeric if statements inside the translation
- Database translations
- JSON files as translation files instead of PHP
milkycode/deepltranslator 适用场景与选型建议
milkycode/deepltranslator 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 70 次下载、GitHub Stars 达 0, 最近一次更新时间为 2025 年 07 月 25 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 milkycode/deepltranslator 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 milkycode/deepltranslator 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 70
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 11
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: proprietary
- 更新时间: 2025-07-25