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 相关文章推荐
新版PHP将向Java靠拢
Oct 09 PHP
一个高ai的分页函数和一个url函数
Oct 09 PHP
php获取文件夹路径内的图片以及分页显示示例
Mar 11 PHP
PHP删除指定目录中的所有目录及文件的方法
Feb 26 PHP
跨浏览器PHP下载文件名中的中文乱码问题解决方法
Mar 05 PHP
typecho插件编写教程(一):Hello World
May 28 PHP
PHP实现简单实用的分页类代码
Apr 08 PHP
php事件驱动化设计详解
Nov 10 PHP
PHP中的日期时间处理利器实例(Carbon)
Jun 09 PHP
浅谈PHP接入(第三方登录)QQ登录 OAuth2.0 过程中遇到的坑
Oct 13 PHP
Yii框架自定义数据库操作组件示例
Nov 11 PHP
thinkphp5.1框架模板赋值与变量输出示例
May 25 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
SSI指令
2006/11/25 PHP
在PHP中实现Javascript的escape()函数代码
2010/08/08 PHP
PHP 事件机制(2)
2011/03/23 PHP
基于jquery的一行代码轻松实现拖动效果
2010/12/28 Javascript
jQuery中:enabled选择器用法实例
2015/01/04 Javascript
jQuery中innerHeight()方法用法实例
2015/01/19 Javascript
JavaScript中的函数声明和函数表达式区别浅析
2015/03/27 Javascript
JS解析XML文件和XML字符串详解
2015/04/17 Javascript
JavaScript中用于四舍五入的Math.round()方法讲解
2015/06/15 Javascript
浅析jQuery 遍历函数,javascript中的each遍历
2016/05/25 Javascript
BootStrap中Datetimepicker和uploadify插件应用实例小结
2016/05/26 Javascript
angular-ui-sortable实现可拖拽排序列表
2016/12/28 Javascript
微信小程序之拖拽排序(代码分享)
2017/01/21 Javascript
教你快速搭建Node.Js服务器的方法教程
2017/03/30 Javascript
利用node.js实现反向代理的方法详解
2017/07/24 Javascript
利用Angular2 + Ionic3开发IOS应用实例教程
2018/01/15 Javascript
实现jquery放大镜的两种方法
2018/02/22 jQuery
详解如何在微信小程序中愉快地使用sass
2018/07/30 Javascript
Vue.js 中制作自定义选择组件的代码附演示demo
2020/02/28 Javascript
JS如何实现封装列表右滑动删除收藏按钮
2020/07/23 Javascript
Python的Django REST框架中的序列化及请求和返回
2016/04/11 Python
Python 模块EasyGui详细介绍
2017/02/19 Python
速记Python布尔值
2017/11/09 Python
Python批处理删除和重命名文件夹的实例
2018/07/11 Python
python将字符串转换成json的方法小结
2019/07/09 Python
10分钟教你用python动画演示深度优先算法搜寻逃出迷宫的路径
2019/08/12 Python
Python函数装饰器原理与用法详解
2019/08/16 Python
Python如何获取Win7,Win10系统缩放大小
2020/01/10 Python
Python第三方库的几种安装方式(小结)
2020/04/03 Python
详解如何解决canvas图片getImageData,toDataURL跨域问题
2018/09/17 HTML / CSS
可持续未来的时尚基础:Alternative Apparel
2019/05/06 全球购物
给老师的检讨书
2014/02/11 职场文书
2015上半年个人工作总结
2015/07/27 职场文书
CSS 还能这样玩?奇思妙想渐变的艺术
2021/04/27 HTML / CSS
MySQL 外连接语法之 OUTER JOIN
2022/04/09 MySQL
如何使用注解方式实现 Redis 分布式锁
2022/07/23 Redis