azuretran / translate
8.0
2021-05-04 12:00 UTC
Requires
- guzzlehttp/guzzle: ^7.0.1
- tebru/gson-php: ^0.7.4
This package is auto-updated.
Last update: 2023-04-19 20:51:46 UTC
README
简化Laravel 5+中使用Microsoft翻译API版本3的过程。
通过此集成,您可以执行以下操作
- 检测文本信息,例如语言代码和脚本。请参阅 ATran@detectTextInformation。
- 检测包含语言代码和脚本的文本信息列表。请参阅 ATran@detectTextsInformation。
- 将文本从一种语言翻译到一种或多种语言。请参阅 ATran@translateText。
- 从一种语言到另一种语言的文本转写。请参阅 ATran@transliterateTextInformation。
- 请求翻译可用的语言,包括语言代码列表。请参阅 ATran@translationsAvailable。
- 请求转写可用的语言,包括可用脚本的列表。请参阅 ATran@transliterationAvailable。
Laravel Microsoft Translator Integration
有3个文件需要查看,以便了解集成的工作方式
- config/atran.php (API端点和授权密钥的配置)
- routes.php (配置PlayWithAPIController路由)
- ATran\Translate\PlayWithAPIController (一个包含API端点操作方法的控制器)
所需软件包
"guzzlehttp/guzzle": "^7.0.1", "tebru/gson-php": "^0.7.3"
Laravel 5+的安装。已在8.40上进行测试。
- 1- 进入您的laravel项目根目录并本地安装此包:
composer require "atran/translate"
- 2- 安装服务提供程序,并加载配置以及路由引用:
php artisan vendor:publish
-
3- 通过输入其索引值从列表中选择“ATran\Translate\ATranServiceProvider”提供程序。
-
4- 进入env文件,并将其包含在底部:
AZURETRAN_KEY=Azure Cognitive Services API SUBSCRIPTION KEY
- 5- 完成啦!
较旧Laravel的安装
您可能需要更多的调试才能使其工作。
- 1- 进入您的laravel项目根目录并本地安装此包:
composer require "atran/translate"
- 2- 手动将ATran服务提供程序添加到config/app.php中的提供程序列表中:
'providers' => [ // ... ATran\Translate\\ATranServiceProvider::class, ]
- 3- 加载配置以及路由引用:
php artisan vendor:publish --force --provider="ATran\Translate\ATranServiceProvider"
- 4- 进入env文件,并将其包含在底部:
AZURETRAN_KEY=Azure Cognitive Services API SUBSCRIPTION KEY
- 5- 完成啦!
使用PlayWithAPIController和Postman的示例
配置
- 代码库配置
-1 前往PlayWithAPIController
-2 前往detectTextInformation和transliterationsAvailable的定义。
-3 检查函数
- detectTextInformation | Postman配置路由 "http://yourwebsite.com/detecttext" 和POST类型。
-1 包含以下标题:
Accept: application/json
2- 包含以下正文:表单数据
KEY TEXT text Hello
3- 响应
{ "language": "en", "score": 1, "isTranslationSupported": true, "isTransliterationSupported": false, "alternatives": [ { "language": "de", "score": 1, "isTranslationSupported": true, "isTransliterationSupported": false }, { "language": "fr", "score": 1, "isTranslationSupported": true, "isTransliterationSupported": false } ] }
- transliterationsAvailable | Postman配置路由 "http://yourwebsite.com/transliterationavailable" 和POST类型。
-1 包含以下标题:
Accept: application/json
2- 响应
{ "ar": { "name": "Arabic", "nativeName": "العربية", "scripts": [ { "code": "Arab", "name": "Arabic", "nativeName": "العربية", "dir": "rtl", "toScripts": [ { "code": "Latn", "name": "Latin", "nativeName": "اللاتينية", "dir": "ltr" } ] }, { "code": "Latn", "name": "Latin", "nativeName": "اللاتينية", "dir": "ltr", "toScripts": [ { "code": "Arab", "name": "Arabic", "nativeName": "العربية", "dir": "rtl" } ].............
用法
在任何Laravel项目控制器顶部导入Use
use ATran;
通过以下方式访问函数
ATran::detectTextInformation($text);
可用函数
- detectTextInformation($text)
- detectTextsInformation($texts)
- transliterateTextInformation($text,$language,$fromscript,$toscript)
- translateText($text, $to)
- transliterationsAvailable($languagecode = null)
- translationsAvailable($languagecode = null)
关于
ATran包在The Unlicense许可证下发布。如果您有任何问题,请随时联系hi@zakaria.website。