PHP Google的translate API代码

  新建一个ANSI的PHP文件,然后创建一个类:

  

复制代码 代码如下:

  header("Content-Type: text/html; charset=utf-8");

  class Google_API_translator{

  public $opts = array("text" => "", "language_pair" => "en|it");

  public $out = "";

  function setOpts($opts) {

  if($opts["text"] != "") $this->opts["text"] = $opts["text"];

  if($opts["language_pair"] != "") $this->opts["language_pair"] = $opts["language_pair"];

  }

  function translate() {

  $this->out = "";

  $google_translator_url = "http://translate.google.com/translate_t?langpair=".urlencode($this->opts["language_pair"])."&;";

  $google_translator_data .= "text=".urlencode($this->opts["text"]);

  $gphtml = $this->postPage(array("url" => $google_translator_url, "data" => $google_translator_data));

  $out = substr($gphtml, strpos($gphtml, "

  "));

  $out = substr($out, 29);

  $out = substr($out, 0, strpos($out, "

  "));

  $this->out = utf8_encode($out);

  return $this->out;

  }

  function postPage($opts) {

  $html ='';

  if($opts["url"] != "" && $opts["data"] != "") {

  $ch = curl_init($opts["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);

  curl_setopt($ch, CURLOPT_POST, 1);

  curl_setopt($ch, CURLOPT_POSTFIELDS, $opts["data"]);

  $html = curl_exec($ch);

  if(curl_errno($ch)) $html = "";

  curl_close ($ch);

  }

  return $html;

  }

  }

  ?>

  使用的时候

  

复制代码 代码如下:

  $g = new Google_API_translator();

  $g->setOpts(array("text" => "Cjjer是天才", "language_pair" => "zh-CN|en"));

  $g->translate();

  echo $g->out;

  ?>

  这样就可以了,输出:Cjjer is genius

  PHP的就这里,参见了部分同学的部分代码。具体忘了。

  这段代码不好。。。但可以用,懒得管啦。。