ThinkPHP调用百度翻译类实现在线翻译


Posted in PHP onJune 26, 2014

要实现ThinkPHP在线翻译功能,需要先在百度开发者中心注册一个API key,具体实现代码如下:

action代码部分:

<?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="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代码部分:

<div id="content">
<div style="padding:5px;">
<form action="__APP__/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="翻 译" style="text-align:center;">
    
<input type="reset" onclick="reset()" class="search-submit" value="清 空" 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>
PHP 相关文章推荐
一个ORACLE分页程序,挺实用的.
Oct 09 PHP
php中的数组操作函数整理
Aug 18 PHP
PHP动态分页函数,PHP开发分页必备啦
Nov 07 PHP
PHP连接MongoDB示例代码
Sep 06 PHP
PHP常用的文件操作函数经典收藏
Apr 02 PHP
PHP将字符分解为多个字符串的方法
Nov 22 PHP
Yii学习总结之安装配置
Feb 22 PHP
PHP生成制作验证码的简单实例
Jun 12 PHP
php微信公众平台开发(四)回复功能开发
Dec 06 PHP
PHP实现表单提交数据的验证处理功能【防SQL注入和XSS攻击等】
Jul 21 PHP
PHP基于MySQLI函数封装的数据库连接工具类【定义与用法】
Aug 11 PHP
php随机生成验证码,php随机生成数字,php随机生成数字加字母!
Apr 01 PHP
使用ThinkPHP+Uploadify实现图片上传功能
Jun 26 #PHP
ThinkPHP采用GET方式获取中文参数查询无结果的解决方法
Jun 26 #PHP
ThinkPHP实现将本地文件打包成zip下载
Jun 26 #PHP
ThinkPHP实现一键清除缓存方法
Jun 26 #PHP
destoon实现商铺管理主页设置增加新菜单的方法
Jun 26 #PHP
destoon在360浏览器下出现用户被强行注销的解决方法
Jun 26 #PHP
实现在同一方法中获取当前方法中新赋值的session值解决方法
Jun 26 #PHP
You might like
Discuz 5.0 中读取纯真IP数据库函数分析
2007/03/16 PHP
PHP has encountered an Access Violation at 7C94BD02解决方法
2009/08/24 PHP
非常精妙的PHP递归调用与静态变量使用
2012/12/16 PHP
php页面缓存方法小结
2015/01/10 PHP
php实现插入排序
2015/03/29 PHP
php计算整个mysql数据库大小的方法
2015/06/19 PHP
laravel5.1框架model类查询的实现方法
2019/10/08 PHP
PHP正则之正向预查与反向预查讲解与实例
2020/04/06 PHP
使用JQuery进行跨域请求
2010/01/25 Javascript
简短几句 通俗解释javascript的闭包
2011/01/17 Javascript
使用typeof判断function是否存在于上下文
2014/08/14 Javascript
javascript数组输出的两种方式
2015/01/13 Javascript
React如何将组件渲染到指定DOM节点详解
2017/09/08 Javascript
JavaScript获取用户所在城市及地理位置
2018/04/21 Javascript
深入理解redux之compose的具体应用
2020/01/12 Javascript
python列出目录下指定文件与子目录的方法
2015/07/03 Python
利用Python读取文件的四种不同方法比对
2017/05/18 Python
高效使用Python字典的清单
2018/04/04 Python
使用python根据端口号关闭进程的方法
2018/11/06 Python
使用pycharm设置控制台不换行的操作方法
2019/01/19 Python
Python交互式图形编程的实现
2019/07/25 Python
如何基于Python批量下载音乐
2019/11/11 Python
在python3.9下如何安装scrapy的方法
2021/02/03 Python
如何在Canvas中添加事件的方法示例
2019/05/21 HTML / CSS
New Balance天猫官方旗舰店:始于1906年,百年慢跑品牌
2017/11/15 全球购物
Europcar美国/加拿大:预订汽车或卡车租赁服务
2018/11/13 全球购物
小学生防溺水广播稿
2014/01/12 职场文书
公司运动会策划方案
2014/05/25 职场文书
2014年行政后勤工作总结
2014/12/06 职场文书
校运会新闻稿
2015/07/17 职场文书
优秀教师主要事迹材料
2015/11/04 职场文书
2016党员三严三实心得体会
2016/01/15 职场文书
《兰兰过桥》教学反思
2016/02/20 职场文书
Python机器学习之PCA降维算法详解
2021/05/19 Python
20180830晚上第一届KSL半决赛 雨神vs解冻(二龙 三炮解说)
2022/04/01 星际争霸
Python日志模块logging用法
2022/06/05 Python