这篇文章主要介绍了thinkphp调用百度翻译类实现在线翻译,需要的朋友可以参考下
要实现thinkphp在线翻译功能,需要先在百度开发者中心注册一个api key,,具体实现代码如下:
action代码部分:
display(public:404);}public function index(){$user = a(index); $user->head();$user->right();$user->footer();$this->display();}public function fanyi(){$value=$_post['value'];$from=auto;$to=auto;$value_code=urlencode($value); $appid=xxxxxxxx;//这里填写你在百度上申请的api key $languageurl = http://openapi.baidu.com/public/2.0/bmt/translate?client_id= . $appid .&q= .$value_code. &from=.$from.&to=.$to;$text=json_decode($this->language_text($languageurl)); $text = $text->trans_result; $rs=$text[0]->dst;$this->assign('value',$value);$this->assign('rs',$rs);$user = a(index); $user->head();$user->right();$user->footer();$this->display(index);}public function language_text($url) //获取目标url所打印的内容{ if(!function_exists('file_get_contents')) { $file_contents = file_get_contents($url); } else { $ch = curl_init(); $timeout = 5; curl_setopt ($ch, curlopt_url, $url); curl_setopt ($ch, curlopt_returntransfer, 1); curl_setopt ($ch, curlopt_connecttimeout, $timeout); $file_contents = curl_exec($ch); curl_close($ch); } return $file_contents;}}?>
html代码部分:
原文:
{$value} 译文:
{$rs}