您现在的位置是:网站首页 > 脚本编程>

thinkphp 调用百度翻译API接口实现在线翻译

2013-10-251619人围观
简介 今天闲着无聊在百度开发者中心注册了一下,并用百度翻译开发了一个属于自己的在线翻译,俗话说的好无图无真相,先把效果图给你贴出来。

今天闲着无聊在百度开发者中心注册了一下,并用百度翻译开发了一个属于自己的在线翻译,俗话说的好无图无真相,先把效果图给你贴出来。

效果图:

php代码:

<?php

class FanyiAction extends Action {

public function _empty(){ 

        header("HTTP/1.0 404 Not Found");

        $this->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="这里填写你在百度上申请的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代码:

<div id="content">

<div style="padding:5px;">

易搜学在线翻译正式上线欢迎测试。目前支持自动翻译,不支持选择语言翻译。

<form action="/esoxue.php/fanyi/fanyi/" method="POST" name="fanyi">

<p>原文:</p>

<textarea name="value" id="yuanwen" rows="10" cols="80" style="padding:5px;width: 661px; height: 217px;">{$value}</textarea>

<input type="submit" class="search-submit" value="翻&nbsp;译" style="text-align:center;">

&nbsp;&nbsp;&nbsp;&nbsp;

<input type="reset" onclick="reset()" class="search-submit" value="清&nbsp;空" style="text-align:center;">

</form>

<p>译文:</p>

<textarea name="rs" id="yiwen" rows="10" cols="80" style="padding:5px;width: 661px; height: 217px;">{$rs}</textarea> </div>

</div>


打赏本站,你说多少就多少

精彩评论

微信关注

Copyright © 2013-2019 千奇博客 保留所有权利 辽ICP备13008238号