tanmuhittin / laravel-google-translate
使用谷歌翻译API将翻译文件转换为其他语言
2.3.0
2024-03-26 08:34 UTC
Requires
- php: >=7.1.0
- ext-json: *
- google/cloud-translate: ^1.7.4
- illuminate/console: >=5.1
- illuminate/support: ^5.5|^6|^7|^8|^9|^10|^11
- illuminate/translation: ^5.5|^6|^7|^8|^9|^10|^11
- stichoza/google-translate-php: ^5.0.1
- yandex/translate-api: ^1.5.2
Requires (Dev)
- orchestra/testbench: 5.x-dev|6.x-dev|9.x-dev
- phpunit/phpunit: ^10.5
README
- 翻译(/resources/lang)下的翻译文件或lang.json文件
- 提供额外的门面函数 Str::apiTranslate 和 Str::apiTranslateWithAttributes
通过使用 stichoza/google-translate-php 或 Google Translate API https://cloud.google.com/translate/ 或 Yandex Translatin API https://tech.yandex.com/translate/
Str 门面 API 翻译助手
此包为 Laravel 辅助 Str 提供两种翻译方法
Illuminate\Support\Str::apiTranslate
-> 使用配置中选择的 API 翻译文本Illuminate\Support\Str::apiTranslateWithAttributes
-> 再次使用配置中选择的 API 翻译文本,此外此函数 尊重 Laravel 翻译文本属性 如 :name
如何使用自己的翻译API
- 通过实现 Tanmuhittin\LaravelGoogleTranslate\Contracts\ApiTranslatorContract 创建自己的翻译API类
- 在配置 laravel_google_translate.custom_api_translator 中写入你的类名。例如:Myclass::class
- 在 laravel_google_translate.custom_api_translator_key 中写入你自定义类的自定义API密钥
现在所有翻译都将使用你的自定义API。
安装
composer require tanmuhittin/laravel-google-translate php artisan vendor:publish --provider="Tanmuhittin\LaravelGoogleTranslate\LaravelGoogleTranslateServiceProvider"
如果你想使用 stichoza/google-translate-php,你不需要API密钥。如果你想使用 Google Translate API,编辑 config/laravel_google_translate.php 并添加你的 Google Translate API密钥。
php artisan config:cache
然后你可以运行
php artisan translate:files
看看效果
潜在问题
SSL证书问题:无法获取本地颁发者证书
https://stackoverflow.com/a/31830614
建议的包
此包可与 https://github.com/andrey-helldar/laravel-lang-publisher 一起使用。
- 使用 https://github.com/andrey-helldar/laravel-lang-publisher 添加基础 Laravel 翻译文件
- 使用此包翻译你的自定义文件
完成
最后
感谢您使用 laravel-google-translate :)