Heim >php教程 >PHP源码 >Google翻译接口(PHP API)

Google翻译接口(PHP API)

PHP中文网
PHP中文网Original
2016-05-25 17:14:091329Durchsuche


/* Google翻译PHP接口
 * 官成文 2009-03-28
 * http://blog.csdn.net/aprin/
 * 注意:如果翻译文本为UTF-8编码,则要删去mb_convert_encoding函数
 */ 

class Google_API_translator {
 public $url = “http://translate.google.com/translate_t”;
public $text = “”;//翻译文本
public $out = “”; //翻译输出 

function setText($text){
 $this->text = $text;
 } 

function translate() {
 $this->out = “”; 

$gphtml = $this->postPage($this->url, $this->text); 

//提取翻译结果
$out = substr($gphtml, strpos($gphtml, “ 

“));
 $out = substr($out, 29);
 $out = substr($out, 0, strpos($out, “
 
“)); 

$this->out = $out;
 return $this->out;
 } 

function postPage($url, $text) {
 $html =”; 

if($url != “” && $text != “”) {
 $ch = curl_init($url);
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
 curl_setopt($ch, CURLOPT_HEADER, 1);
 curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
 curl_setopt($ch, CURLOPT_TIMEOUT, 15); 

/*
 *hl – 界面语言,此处无用。
*langpair – src lang to dest lang
 *ie – urlencode的编码方式?
 *text – 要翻译的文本
*/
 $fields = array(‘hl=zh-CN’, ‘langpair=zh-CN|en’, ‘ie=UTF-8′,’text=’.urlencode(mb_convert_encoding($text, ‘UTF-8′, ‘GB2312′)));
 curl_setopt($ch, CURLOPT_POST, 1);
 curl_setopt($ch, CURLOPT_POSTFIELDS, implode(‘&’, $fields)); 

$html = curl_exec($ch);
 if(curl_errno($ch)) $html = “”;
curl_close ($ch);
 }
 return $html;
 }
 } 

//just for test
 $g = new Google_API_translator();
 $g->setText(“我爱Java!”);
 $g->translate();
 echo $g->out;
 ?>

                   

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn