Zend Framework использование Google Translate - PullRequest
0 голосов
/ 18 ноября 2010

Я пытаюсь автоматически перевести строку, используя переводчик Google! Использование Zend_Http_CLient не может войти в приложение и получить переведенные слова. Мне возвращается ошибка аутентификации.

Я гуглил и искал здесь что-то об этом, но безуспешно. Может кто-нибудь помочь и сказать мне, где можно найти представление о том, как использовать Zend_Gdata с Google Translate и пройти аутентификацию в сервисе?

Большое спасибо, наилучшие пожелания.

Ответы [ 3 ]

1 голос
/ 19 ноября 2010
$client = new Zend_Http_Client('http://ajax.googleapis.com/ajax/services/language/translate', array(
    'maxredirects' => 0,
    'timeout'      => 30));

$client->setParameterGet(array(
    'v' => '1.0',
    'q' => 'Привет',
    'langpair' => 'ru|en'
    ));

$response = $client->request();



$data = $response->getBody();

$server_result = json_decode($data);

$status = $server_result->responseStatus; // should be 200
$details = $server_result->responseDetails;

$result = $server_result->responseData->translatedText;

echo $result;
die;
1 голос
/ 19 ноября 2010

Насколько я знаю, классы Zend GData еще не поддерживают google translate

source: http://framework.zend.com/manual/en/zend.gdata.html

на той же странице вы найдете ссылку на это:http://code.google.com/p/gtranslate-api-php/

Я просто попробовал, и, похоже, он работает, НО обратите внимание на комментарий в объявлении класса

Google требует атрибуции для их Language API,см .: http://code.google.com/apis/ajaxlanguage/documentation/#Branding

надеюсь, что это поможет

предоставьте сообщение об ошибке, чтобы сделать ваш вопрос более понятным

спасибо

0 голосов
/ 23 ноября 2010

Официального Google Translate пока нет. Но этот адаптер перевода может помочь:

http://www.zfsnippets.com/snippets/view/id/35

Кроме того, если вы используете это, не забудьте кэшировать свои результаты! Вы не хотите снова и снова забивать сервис для одних и тех же переводов.

...