reliqarts/laravel-auto-translator

Laravel 自动翻译。

v1.0.4 2024-07-15 21:26 UTC

This package is auto-updated.

Last update: 2024-09-15 21:51:44 UTC


README

Laravel Auto-Translator

Laravel 自动翻译器,适用于 Laravel 10+

test Codecov Latest Stable Version License

此包将扫描您的应用程序,定位所有翻译字符串键,并根据您的配置生成翻译。

功能

  • 简单,易于安排 artisan 命令以生成所有翻译
  • 自动语言文件生成(json
  • 易于配置,支持自定义翻译器实现

安装

通过 composer 安装

composer require reliqarts/laravel-auto-translator

配置

您可以选择发布配置文件并根据需要进行自定义。每个内置翻译器实现都有自己的配置选项。所有配置选项都在配置文件中有解释。

php artisan vendor:publish --provider="\ReliqArts\AutoTranslator\ServiceProvider"

翻译器

auto_translate_via 键允许您指定用于自动翻译的翻译器。默认情况下,这设置为 Google 的简单翻译器。任何实现 \ReliqArts\AutoTranslator\Contract\Translator 接口的服务都可以在这里使用。

内置实现

重要

对于生产用途,请考虑使用付费翻译服务。不要依赖于此包中包含的免费 Google HTTP 实现,因为它可能会随时中断。请参阅google-translate-php上的原始免责声明。

用法

Artisan 命令

该包提供了一个易于使用的命令,您可以选择按需或按计划运行。

php artisan auto-translator:translate

您可以通过传递一个或多个语言代码(以逗号分隔)来指定应翻译成哪些语言。例如。

php artisan auto-translator:translate es,de

可选的 replace-existing 标志(r)允许您覆盖现有翻译。例如。

php artisan auto-translator:translate es,de -r

语言切换端点和中间件

该包提供了一个路由/中间件组合,允许用户切换应用程序的语言。

用法

  1. \ReliqArts\AutoTranslator\Http\Middleware\LanguageDetector 中间件添加到您的 App\Http\Kernel 类中的 web 路由组。
  2. 通过向 switch-language 路由发送 POST 请求来切换语言。(在配置文件中可更改名称和端点) 您可以使用选择框、一组标志等来调用此端点。UI 选择完全由您决定 😃

致谢与灵感

此包受到了 laravel-auto-translate 的启发,并得益于以下内容

完成!🍻