gabrieljmj/translator

使用API或其他方式将字符串翻译

dev-master 2014-12-28 20:36 UTC

This package is auto-updated.

Last update: 2024-09-16 02:55:57 UTC


README

![Gitter](https://badges.gitter.im/Join Chat.svg) Total Downloads Latest Unstable Version License Scrutinizer Code Quality

使用Web服务或其他可以执行此操作的东西将文本翻译。##安装###Composer

{
  "require": {
    "gabrieljmj/translator": "dev-master"
  }
}

##需要

##支持###Google Translate - 未测试要使用Google Translate,需要API密钥。创建一个,请按照以下步骤操作

  • 转到 Google开发者控制台
  • 选择一个项目,或创建一个新的项目。
  • 在左侧侧边栏中,选择 APIs & auth。在API列表中,确保Google Translate API的状态为 启用
  • 在左侧侧边栏中,选择 Credentials

如何实例化: new \Translator\Service\GoogleTranslate(\Translator\Http\RequestInterface $request, string $apiKey)

###Yandex Translate - 已测试使用时也需要API密钥。

如何实例化: new \Translator\Service\YandexTranslate(\Translator\Http\RequestInterface $request, string $apiKey)

##如何使用使用Google Translate的示例###获取Web服务的接受语言使用方法 getAcceptedLangs()。它将返回一个包含您使用的Web服务接受的全部语言的数组。

###翻译

use Translator\Service\GoogleTranslate;
use Translator\Http\CurlRequest;

$text = 'Hi! How are you?';
$apiKey = 'YOUR_API_KEY';

$translator = new GoogleTranslate(new CurlRequest(), $apiKey);
$translatedText = $translator->translate('en', 'pt', $text);
$translatedText->getNewText();//'Oi! Como vai você?'
$translatedText->getOriginalText();//'Hi! How are you?'
$translatedText->getOriginalLang();//en
$translatedText->getNewLang();//pt

使用数组

$texts = array('Hi!', 'How are you?');

$translatedText = $translator->translate('en', 'pt', $texts);
$translatedText->getNewText();//Array('Oi!', 'Como vai você?')
$translatedText->getOriginalText();//Array('Hi!', 'How are you?')
$translatedText->getOriginalLang();//en
$translatedText->getNewLang();//pt

###检测语言

$detectedText = $translator->detect($text);
$detectedText->getLang();//en
$detectedText->getText()//Hi! How are you?
$detectedText->getDetectedTextWithLang();//Array('Hi! How are you?' => 'en')

使用数组

$texts = array('Hi!', 'Olá!');

$detectedText = $translator->detect($texts);
$detectedText->getLang();//Array('en', 'pt')
$detectedText->getText();//Array('Hi!', 'Olá!')
$detectedText->getDetectedTextWithLang();//Array('Hi!' => 'en', 'Olá!' => 'pt')