开发者社区> 喵了个咪_> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

PhalApi-Translate百度翻译拓展

简介:
+关注继续查看

PhalApi-Translate百度翻译拓展

前言

在全球化的脚步下,为了更好的用户体验翻译是少不了的(总有一些和我一样的英文菜鸡),所以给到用户最好的时当地语言,但是很多地方并没提供多语言,比如地理位置一般采集上来
的都是当地的语言位置信息,这个时候我们就需要用到翻译了,对比了很多翻译有道,谷歌翻译和百度翻译,最终还是选择了百度翻译,那么话不多说我们就开始具体介绍一下此拓展!

附上:

官网地址:http://www.phalapi.net/

开源中国Git地址:http://git.oschina.net/dogstar/PhalApi/tree/release

开源中国拓展Git地址:http://git.oschina.net/dogstar/PhalApi-Library

百度地图开放平台地址:http://api.fanyi.baidu.com/api/trans/product/index

1. 安装

配置方式非常简单只需要把拓展下载下来放入Library文件内即可,然后就可以使用如下方法进行实例

//初始化传入配置文件地址
$Translate = new Translate_Lite("appId", "secKey");

需要传入两个参数一个是appId一个是secKey在百度翻译平台申请的时候会给你appId和secKey

百度翻译支持语言:

语言简写    名称
auto    自动检测
zh    中文
en    英语
yue    粤语
wyw    文言文
jp    日语
kor    韩语
fra    法语
spa    西班牙语
th    泰语
ara    阿拉伯语
ru    俄语
pt    葡萄牙语
de    德语
it    意大利语
el    希腊语
nl    荷兰语
pl    波兰语
bul    保加利亚语
est    爱沙尼亚语
dan    丹麦语
fin    芬兰语
cs    捷克语
rom    罗马尼亚语
slo    斯洛文尼亚语
swe    瑞典语
hu    匈牙利语
cht    繁体中文

注意:也可以直接改写框架中的appId和secKey变量在初始时可以不用传递

2.使用

使用非常简单,参数分别为,需要翻译的内容数组,需要翻译的语言(推荐auto自动匹配),需要翻译的语言

$rs = $Translate_Lite->translate(array("上海市", "上海市", "杨浦区"), "auto", "jp");


// 结果
array(3) {
  [0]=>
  string(9) "上海市"
  [1]=>
  string(9) "上海市"
  [2]=>
  string(9) "楊浦区"
}

返回结果为一个数组和需要翻译的数组对应的数组,数组可以指定key返回时会和key对应返回

$rs = $Translate_Lite->translate(array("province" => "上海市", "city" => "上海市", "area" => "杨浦区"), "auto", "jp");

// 结果
array(3) {
  ["province"]=>
  string(9) "上海市"
  ["city"]=>
  string(9) "上海市"
  ["area"]=>
  string(9) "楊浦区"
}

3. 异常

在调试过程中或使用过程中常常会遇到一些异常,拓展中会抛出一个Translate_Exception_Base的异常可以使用try进行捕获并且通过code对应以下情况进行处理

// 成功
const TRANSLATE_SUCCESS = 52000;
// 请求超时
const TRANSLATE_OVERTIME = 52001;
// 系统错误
const TRANSLATE_ERROR = 52002;
// 未授权用户
const TRANSLATE_APPID_UNAUTHORIZED = 52003;
// 必填参数为空
const TRANSLATE_LACK_PARAMETER = 54000;
// 客户端IP非法
const TRANSLATE_IP_ILLEGAL = 58000;
// 签名错误
const TRANSLATE_SIGNATURE_ERROR = 54001;
// 访问频率受限
const TRANSLATE_FREQUENCY_LIMIT = 54003;
// 译文语言方向不支持
const TRANSLATE_LANGUAGE_NOT_SUPPORTED = 58001;
// 账户余额不足
const TRANSLATE_LACK_BALANCE = 54004;
// 长query请求频繁
const TRANSLATE_LONG_FREQUENT_QUERY_REQUEST = 54005;

// 参数类型不对需要传递数组类型
const TRANSLATE_NOT_SUPPORT_TYPES = 10001;

4. 总结

希望此拓展能够给大家带来方便以及实用,暂时只支持容联云如有其他童鞋希望能加入其余常用运营商可与笔者进行联系!

注:笔者能力有限有说的不对的地方希望大家能够指出,也希望多多交流!

官网QQ交流群:421032344 欢迎大家的加入!

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Zotero翻译插件Zotero PDF Translate无法正常翻,翻译api接入
Zotero翻译插件Zotero PDF Translate无法正常翻,翻译api接入
0 0
Markdown 拓展 - 对数学公式的支持
MathJax 和 LaTeX 数学公式 支持 MathJax 是一款运行在浏览器中的开源数学符号渲染引擎,使用MathJax可以方便的在浏览器中显示数学公式,不需要使用图片。目前,MathJax可以解析 Latex、MathML 和 ASCIIMathML 的标记语言。MathJax 项目于 2009 年开始,发起人有 American Mathematical Society, Design Science等,还有众多的支持者,个人感觉MathJax会成为今后数学符号渲染引擎中的主流,也许现在已经是了。本文接下来会讲述 MathJax 的基础用法,但不涉及MathJax 的安装及配置。
0 0
Flutter入门:Text问题集锦
在Row中使用TextField出错 当我们在一个Row组件中添加一个TextField
0 0
带你读《实用Bot开发指南:基于Node.js与Bot框架设计并构建聊天机器人》之三:语言理解智能服务
本书讲述机器人设计和实现背后的基本概念。每一章都建立在前面的主题之上,并且在适当的地方显示了实现这些概念的实际工作代码。通过选择一个代码编辑器,你可以开始体验创建智能、迷人和有用的机器人。本书将教你如何在Facebook Messenger和Slack等平台上创建自己的机器人,整合扩展API,并在云中应用人工智能和机器学习算法。在本书的最后,你将会有足够的信息通过你创建的机器人来接触成千上万的新用户。
216 0
微信小程序把玩(三十二)Image API
原文:微信小程序把玩(三十二)Image API 选择图片时可设置图片是否是原图,图片来源。这用的也挺常见的,比如个人中心中设置头像,可以与wx.upLoadFile()API使用 主要方法: wx.
1548 0
微信小程序把玩(三十七)location API
原文:微信小程序把玩(三十七)location API location API也就分这里分两种wx.getLocation(object)获取当前位置和wx.openLocation(object)通过经纬度打开内置地图。
1036 0
基于Chrome开源提取的界面开发框架开篇--转
初衷 一直希望VC开发者能够方便的开发出细腻高品质的用户界面。我喜欢C++,选择的平台是Windows,所以大部分时间用VC。我自身不排斥其他技术或者开发语言或者开发工具,都去了解,了解的目的是想吸取好的思想补充VC开发方面的不足。
1277 0
+关注
喵了个咪_
后端程序员,开源PHP框架PhalApi核心开发者,编写录制phalapi教程,phalcon爱好者编写phalcon教程以及zephir文档翻译,热爱交流沟通,喜欢go语言,欢迎大家一起交流沟通,探讨技术,座右铭:代码即真理,你的真理是什么呢?
文章
问答
文章排行榜
最热
最新
相关电子书
更多
函数计算最佳实践:快速开发一个分布式 Puppeteer 网页截图服务
立即下载
《优酷响应式布局技术全解析》
立即下载
荷鲁斯移动端第三方库安全检测引擎介绍
立即下载