Thinkphp3.2.3多语言翻译以及使用百度翻译的示例分析
发表于:2024-11-17 作者:千家信息网编辑
千家信息网最后更新 2024年11月17日,这篇文章将为大家详细讲解有关Thinkphp3.2.3多语言翻译以及使用百度翻译的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、Thinkphp多语言翻
千家信息网最后更新 2024年11月17日Thinkphp3.2.3多语言翻译以及使用百度翻译的示例分析
这篇文章将为大家详细讲解有关Thinkphp3.2.3多语言翻译以及使用百度翻译的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
一、Thinkphp多语言翻译
首先在Common/conf/config.php文件中写入如下内容:
'配置值' //语言包配置 'LANG_SWITCH_ON' => true, // 开启语言包功能 'LANG_AUTO_DETECT' => true, // 自动侦测语言 开启多语言功能后有效 'LANG_LIST' => 'zh-cn,en-us,zh-tw', //必须写可允许的语言列表 'VAR_LANGUAGE' => 'l', // 默认语言切换变量);?>
然后在Common/conf文件夹下新建一个tags.php文件,写入内容:
array('Behavior\CheckLangBehavior'), );?>
当然还要写入自己的语言包文件,在Think/Lang/下面有四个语言包文件,你可以在这四个或新建语言包文都可以,或者你在模块下面新建一个Lang文件夹,比如Home/Lang,在下面新增zh-cn.php,en-us.php等等语言包文件。简体中文语言包可以这样写如下:
"登录",);
英文语言包可以这样写如下:
"Login",);
然后随便在一个页面,写入如下内容:
{$Think.lang._Login}
最后在浏览器访问该页面,即可看到,比如在地址栏输入如下URL:
http://localhost/index.php?l=zh-cnhttp://localhost/index.php?l=en-us
这样就可以看到中英文切换了,大家可以自己试一试。
二、使用百度翻译
我这里说的百度翻译并不是在http://fanyi.baidu.com/这个网址中输入内容点击翻译这样的,这里我是以代码的形式利用CURL进行翻译的。
翻译文件放在/Home/Common/function.php中,内容如下:
'自动检测', 'en' => '英语', 'zh' => '中文', 'cht' => '中文繁体', ); /** * 获取支持的语种 * @return array 返回支持的语种 */ static function getLang() { return self::$Lang; } /** * 执行文本翻译 * @param string $text 要翻译的文本 * @param string $from 原语言语种 默认:中文 * @param string $to 目标语种 默认:英文 * @return boolean string 翻译失败:false 翻译成功:翻译结果 */ static function exec($text, $from = 'zh', $to = 'en') { $url = "http://fanyi.baidu.com/v2transapi"; $data = array ( 'from' => $from, 'to' => $to, 'query' => $text ); $data = http_build_query ( $data ); $ch = curl_init (); curl_setopt ( $ch, CURLOPT_URL, $url ); curl_setopt ( $ch, CURLOPT_REFERER, "http://fanyi.baidu.com" ); curl_setopt ( $ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; rv:37.0) Gecko/20100101 Firefox/37.0' ); curl_setopt ( $ch, CURLOPT_HEADER, 0 ); curl_setopt ( $ch, CURLOPT_POST, 1 ); curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data ); curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 ); curl_setopt ( $ch, CURLOPT_TIMEOUT, 5 ); $result = curl_exec ( $ch ); curl_close ( $ch ); $result = json_decode ( $result, true ); // 出错状态码 999 if ($result ['error']) { return false; } return $result ['trans_result'] ['data'] ['0'] ['dst']; }}?>
大家可以根据自己的需求对其进行修改。
echo Translate::exec ( "大家好","zh","en"); //这里输出是:Hello everyone
这样就翻译成功了。
关于"Thinkphp3.2.3多语言翻译以及使用百度翻译的示例分析"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
语言
文件
内容
多语
语种
中文
篇文章
示例
分析
成功
功能
文件夹
文本
更多
页面
英文
切换
支持
输入
配置
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
自学软件开发公司
南京江宁比较好的软件开发公司
北京超算套料软件开发商
win7无法找到打印共享服务器
pb 数据库开发
内江市畅捷软件开发公司
简述数据库的文件组成
社交软件开发编辑技巧
韩百川服务器
哪个公司做网络安全性最好
小班网络安全法
电子网络技术学的是什么
nlp 数据库选择
手抄报主题为网络安全
天津软件开发的
网络安全服务驻场方案
atlas数据库怎么安装
创新网络技术服务口碑推荐
网络技术选择题高频考点
uinapp需要web服务器吗
服务器上的数据库如何管理
数据库表的字符集
软件开发违法分包
服务器电源放假通知
北京程序软件开发服务至上
深圳宇翔网络技术有限公司
山东桌面点胶软件开发
防电诈手机网络安全教育
鸿蒙系统软件开发速度
学生缴费系统数据库