chrissantiago82 / laravel-google-translate
Laravel的Google Translate API包
10.0.0
2024-02-23 09:35 UTC
Requires
- php: ^8.1
- google/cloud-translate: ^1.2
- illuminate/support: 10.*
Requires (Dev)
- mockery/mockery: ^1.1
- orchestra/testbench: 7.*
- phpunit/phpunit: ^10.0
This package is auto-updated.
Last update: 2024-09-23 10:46:58 UTC
README
此包使您在Laravel应用程序中使用Google Translate API变得简单,配置最少,语法清晰,API一致。
安装
- 您可以使用以下命令通过composer安装此包
composer require ChrisSantiago82/laravel-google-translate
-
包将自动注册。
-
我们已按步骤详细记录了如何设置项目和从Google Cloud Platform控制台获取必要的配置在此处。
-
您可以使用以下命令发布配置文件
php artisan vendor:publish --provider="JoggApp\GoogleTranslate\GoogleTranslateServiceProvider"
这将在config目录中创建名为googletranslate.php的包配置文件。以下是已发布配置文件的内容
return [ /* |---------------------------------------------------------------------------------------------------- | The ISO 639-1 code of the language in lowercase to which the text will be translated to by default. |---------------------------------------------------------------------------------------------------- */ 'default_target_translation' => 'en', /* |------------------------------------------------------------------------------- | Path to the json file containing the authentication credentials. | | The process to get this file is documented in a step by step detailed manner | over here: | https://github.com/JoggApp/laravel-google-translate/blob/master/google.md |------------------------------------------------------------------------------- */ 'api_key' => env('GOOGLE_TRANSLATE_API_KEY'), ];
如何使用
-
设置配置文件值后,您就可以使用以下方法😄
-
检测语言。您可以传递单个字符串或多个字符串的数组
GoogleTranslate::detectLanguage('Hello world'): array GoogleTranslate::detectLanguage(['Hello world', 'Laravel is the best']); // Returns multi-dimensional array containing result set for all the array elements.
- 翻译字符串:translate方法接受第二个可选参数,可以是您想要字符串翻译成的语言代码。您可以在配置文件中指定默认选项
GoogleTranslate::translate('Hello world'): array GoogleTranslate::translate(['Hello world', 'Laravel is the best']); // Returns multi-dimensional array containing result set for all the array elements.
- 通过传递语言代码获取特定语言的“Google翻译”的所有可用翻译
GoogleTranslate::getAvailableTranslationsFor('en'): array
- 除非语言与第一个参数相同,否则翻译。此方法是一种清洁的方式要求包检测给定字符串的语言,如果它与第一个参数相同,则不执行翻译。它接受一个可选的第三个参数,即您想要字符串翻译成的语言代码。您可以在配置文件中指定默认选项。如果语言相同,则返回输入字符串,否则返回包含翻译结果的数组
GoogleTranslate::unlessLanguageIs('en', string $text);
- 翻译并返回翻译后的字符串。它接受一个可选的第二个参数,即您想要字符串翻译成的语言代码。您可以在配置文件中指定默认选项。
GoogleTranslate::justTranslate(string $text): string
- 还有一个可选的第三个参数用于格式,以便更好地支持HTML翻译。Google Translate API目前支持'text'和'html'作为参数。此参数的默认值为'text',因为它是最适合大多数翻译的情况。 Google Translate API文档
GoogleTranslate::unlessLanguageIs('en', string $text, string $format);
- 还有一个名为@translate的不错的blade助手,它随包一起提供,以便在视图文件中使用更整洁。它接受一个可选的第二个参数,即您想要字符串翻译成的语言代码。您可以在配置文件中指定默认选项。
@translate('Hello World')
测试
您可以使用以下命令运行测试
vendor/bin/phpunit
变更日志
请参阅CHANGELOG获取有关最近更改的更多信息。
安全
如果您发现任何安全相关的问题,请通过harish@jogg.co发送电子邮件,而不是使用问题跟踪器。
致谢
许可证
MIT许可证(MIT)。有关更多信息,请参阅许可证文件。