当前位置: 首页 > 图文教程 > 网络编程 > PHP > PHP Google的translate API代码

PHP
PHP教程:缓存技术应用
PHP5对webservice的实现
20个有用的PHP+jQuery组件和教程(英文)
屏蔽部分Email地址的smarty插件
编写PHP代码的过程中养成的良好习惯
PHP教程:MySQL读写分离由PHP实现
PHP实例教程:实现网站上传图片自动加水印
CSS教程:绝对定位和浮动的分栏布局
WordPress教程:query_posts()
总结 PHP xajax应用方法
如何实现PHP的TEA算法?
PHP的企业应用-WebService
PHP的光明前途
如何在IIS7下面添加对PHP网页的支持
用php制作友好的404错误页面
多进程应用帮助PHP解决难题
PHP数据库常出现哪些问题?
PHP的七大优势
PHP教程:TEA算法实现
纯属忽悠:Google提供的网站加速PHP技巧

PHP Google的translate API代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 159 ::
收藏到网摘: n/a

这里我还是接上话使用Google的translate工具翻译 .NET translate API的一篇文字,上篇是c#实现的,我这里再用PHP实现一下。 新建一个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的就这里,参见了部分同学的部分代码。具体忘了。
这段代码不好。。。但可以用,懒得管啦。。