PHP 调用百度翻译api翻译数据
百度翻译API的PHP代码,需要申请百度翻译APPID和密钥,这是申请地址http://api.fanyi.baidu.com/api/trans/product/index,代码如下:
public function _construct()
{ //自定义初始化parent::_construct();$this->_resetDB();$this->_appUrl = 'http://api.fanyi.baidu.com/api/trans/vip/translate';$this->_appId = '你申请的APPID'; // API Key$this->_appKey = '你申请的密钥'; // 密钥$this->_appSalt = rand(1000000000, 9999999999); // 随机数
}
public function fy(){ $result = $this->_fanyi("how are you?", 'en', 'zh'); //翻译数据var_dump($result); //输出翻译后的结果
}
private function _fanyi($value, $from, $to) //翻译
{// 签名$sign = md5($this->_appId . $value . $this->_appSalt . $this->_appKey);$data = array('q' => $value,'appid' => $this->_appId,'salt' => $this->_appSalt,'from' => $from,'to' => $to,'sign' => $sign);$result = call($this->_appUrl, $data);$result = json_decode($result, true);if (isset($result['trans_result']['0']['dst'])) {if (!empty($result['trans_result']['0']['dst'])) {return $result['trans_result']['0']['dst'];}} return '';
}
下面的代码是写在function.php中的。
//发起网络请求
function call($url, $args=null, $method="post", $testflag = 0, $timeout = CURL_TIMEOUT, $headers=array())
{/*{{{*/$ret = false;$i = 0;while($ret === false){if($i > 1)break;if($i > 0){sleep(1);}$ret = callOnce($url, $args, $method, false, $timeout, $headers);$i++;}return $ret;
}/*}}}*/function callOnce($url, $args=null, $method="post", $withCookie = false, $timeout = CURL_TIMEOUT, $headers=array())
{/*{{{*/$ch = curl_init();if($method == "post"){$data = convert($args);// print_r($data);curl_setopt($ch, CURLOPT_POSTFIELDS, $data);curl_setopt($ch, CURLOPT_POST, 1);}else{$data = convert($args);if($data){if(stripos($url, "?") > 0){$url .= "&$data";}else{$url .= "?$data";}}}curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);if(!empty($headers)){curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);}if($withCookie){curl_setopt($ch, CURLOPT_COOKIEJAR, $_COOKIE);}$r = curl_exec($ch);curl_close($ch);print_r($r);return $r;
}/*}}}*/function convert(&$args)
{/*{{{*/$data = '';if (is_array($args)){foreach ($args as $key=>$val){if (is_array($val)){foreach ($val as $k=>$v){$data .= $key.'['.$k.']='.rawurlencode($v).'&';}}else{$data .="$key=".rawurlencode($val)."&";}}return trim($data, "&");}return $args;
}/*}}}*/
若有错误,欢迎提出!
PHP 调用百度翻译api翻译数据相关推荐
- vue 后台翻译_vue cli3 调用百度翻译API翻译页面的实现示例
首先说下,本人为在校大三狗一只,缺少实战开发经验,然后用语什么的也不标准,就按我自己的想法写的,有什么不对的地方欢迎指导指导哈 然后直接开始吧 在需要翻译的地方做上标记,这里用的是添加名为" ...
- python调用百度地图API爬取西安市POI数据
任务前提 做该项目之前,首先得有基础知识: 编程语言:python 编译工具:PyCharm 网络爬虫相关知识,xpath库,numpy,pandas等库. 任务准备: 去百度地图开放平台申请密匙:h ...
- c语言api获取百度地图,H5调用百度地图API获取地理位置
//获取当前位置 var geolocation = new BMap.Geolocation(); geolocation.getCurrentPosition(function(r){ alert ...
- centerandzoom 无效_Django调用百度地图api在地图上批量增加标记点
在调用百度地图api进行web开发时遇到了一个需求,我们需要在网页中内嵌一个div 然后在div中调用百度地图的js显示我们所需要的地区.根据需求坐标在地图上添加若干个标记点,并批量的为各个标记点设置 ...
- python 调用百度地图api 实现批量经纬度转换为实际省市地点(api调用,json解析,mysql读取与写入)
1.获取秘钥 调用百度地图API实现得申请百度账号或者登陆百度账号,然后申请自己的ak秘钥.链接如下:添加链接描述 下面是百度创建的app设置: 2.调用API将经纬度信息解析成json信息 def ...
- 百度地图AK申请注意+百度地图API生成热力图+调用百度地图API自动获取经纬度和地址
文章目录 一.百度地图AK密钥申请 二.调用百度地图API生成热力图 三.调用百度地图API自动获取经纬度和地址 一.百度地图AK密钥申请 点击百度地图API控制台,输入登录账户,即可进入,若账户未完 ...
- 如何调用百度地图API
前言 要调用百度地图API,步骤操作如下 注册并创建一个API密钥.您可以在百度地图API控制台上创建您的密钥. 选择要使用的API服务.百度地图API提供了多种服务,包括地图展示.路线规划.地点搜索 ...
- vue调用百度地图API实现点击相应位置切换地图定位
vue调用百度地图API实现点击相应位置切换地图定位 1.需求分析 在页面显示地图,初始状态显示上海市,地图上有特定地点的标注. 左侧为建筑(地点)列表,点击某个地点右侧地图定位到其地理位置并显示具体 ...
- 调用百度地图API接口制作热力图
调用百度地图API接口制作热力图 Python学了很久,也做了一些机器学习的demo,利用matolotlib库做过一些可视化.今天呢想尝试做一下热力图.先PO一张我最终效果图. 因为数据原因,效果一 ...
- 有道云翻译API翻译JavaScript使用教程
有道云翻译API翻译使用教程 一.注册: 前往有道智云AI开放平台进行注册. 然后填写进入免费体验试用进行资料填写. 二.创建应用: 进入上图1,创建应用如下图:执行1.2. 进入上上图2,创建实例如 ...
最新文章
- window下搭建虚拟Linux操作系统
- mysql通过字段凝视查找字段名称
- Filter_细节_过滤器拦截方式配置
- asp.net mvc源码分析-Action篇 DefaultModelBinder
- UNIX高级环境编程 第11、12章 线程同步及属性
- msp430和stm32 lcd屏驱动程序
- Maven 入门 (2)—— 创建Maven项目
- Extjs学习(3):事件和动作
- 网络视频嗅探的几种方法
- Mac 上使用windows软件--wineskin
- 配置maven使用阿里云仓库
- git版本控制操作教程:撤销/回退
- 如何在华为云上服务器部署WEB网站
- Derivation of Linear Regression with Multiple Variables
- 若不是因为生活所迫,谁愿把自己搞得满身才华
- 教你用Python语音合成,以及文字转语音~
- 1M带宽服务器能够承载多少人
- 关于Delphi中使用正则表达式获取汉字的问题
- oj1075分析和代码
- 因特网上的英语学习资源 [转自 www.chinadaily.com.cn]
热门文章
- 大数据能否带来风控革命
- 计算机硬盘显示容量,求解怎么增加电脑硬盘容量
- php7安装fileinfo扩展
- 快速回到桌面的快捷键快速切换窗口快捷键
- 【嵌入式】SIM808/SIM900发送短信AT指令0X1A
- 28岁女生转行前端晚吗?前景怎么样?
- Logging 之root 打印器来捣乱
- Android开发之最新Android Studio推送代码到最新GitHub教程 | Android Studio绑定GitHub | AS令牌登录GitHub | 创建GitHub令牌
- 计算机ram结构,2017年全国计算机考试四级复习纲要:RAM的结构、组织及其应用...
- Ubuntu18.04.4安装与配置,让老机焕发青春