2012-01-30 125 views
1

在我的PHP应用程序中,我必须开发一个新功能,即当用户填写登录表单(html)时,无论他/她在“姓名”字段中输入了其他两个文件即“中文名称”和“中文名称”应自动填写。 我想知道是否有可能与谷歌翻译?如果是的话,请与我分享代码或例子。将文本自动更改为其他语言+谷歌翻译

回答

2

假设您希望在服务器端(PHP)执行翻译,您可以使用file_get_contents从Google Translate API获取数据。然后你需要解析回应并获得翻译文本。您需要获得API KEY才能访问翻译服务。

<?php 
$string = 'Hello World'; 
$source_lang = 'en'; 
$target_lang = 'zh-CN' 

header ("Content-Type: text/html;charset=utf-8"); 
$data = file_get_contents ('https://www.googleapis.com/language/translate/v2?key=INSERT-YOUR-KEY&q='.urlencode($string).'&source='.$source_lang.'&target='.$target_lang); 
$data = json_decode ($data); 
$translated = $data->data->translations->[0]->translatedText; 
echo $translated; 

?> 

服务器响应是JSON对象与结构:关于基本概念

{ 
    "data": { 
     "translations": [ 
      { 
       "translatedText": "Hallo Welt", 
       "detectedSourceLanguage": "en" 
      } 
     ] 
    } 
} 

更多信息是可供选择: http://baris.aydinoglu.info/coding/google-translate-api-in-php

谷歌的文档翻译API查询: http://code.google.com/apis/language/translate/v2/using_rest.html

+0

感谢您的答复。我正在尝试应用http://baris.aydinoglu.info/coding/google-translate-api-in-php解决方案,但在第一个链接http://ajax.googleapis.com/ajax/services/language /translate?v=1.0&q=hola%20mundo&langpair=es|en,出现某种错误,你能帮我一下吗? – PHP 2012-01-30 11:53:21

+0

该网站使用API​​的版本1。它已被弃用,以支持v2 http://code.google.com/apis/language/translate/v2/getting_started.html – 2012-01-30 11:55:46

+0

再次感谢您的回答,帮助我了很多,为此+1,我创建了新的API密钥并使用您的代码,但它给了我错误 “”代码“:403, ”消息“:”每日限制超出“ – PHP 2012-01-30 12:20:00