位置: 编程技术 - 正文

CodeIgniter多语言实现方法详解(coded language)

编辑:rootadmin

推荐整理分享CodeIgniter多语言实现方法详解(coded language),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:codeigniter中文手册,coded language,code vein语言设置,codeigniter中文手册,coded language,code vein语言设置,codeigniter 教程,coded language,内容如对您有帮助,希望把文章链接给更多的朋友!

本文实例分析了CodeIgniter多语言实现方法。分享给大家供大家参考,具体如下:

CI应用目录下有一个language语言包目录,用来配置多种不同的语言。语言的配置位于config文件中,配置格式如下:

定义语言文件

language下有个空的english目录,即上面定义的系统默认语言目录,系统会从该目录加载语言包文件。如果要定义不同的语言包,如zh_cn,则创建zh_cn目录并配置相应语言包文件即可。需要注意的是,语言文件的后缀必须为_lang.php,语言翻译通过数组的键值对来实现,为防止出现重复的键名,可以为键名增加统一的前缀。

配置的方式可参考下面:

语言包的使用

使用语言包之前需要先加载语言包,加载和使用方式如下:

可以说语言包的使用相当简单,前不久也做了个台湾版的系统,顺便说下CI中的语言包的使用及需要注意的问题。

1、$config['language'] 直接配置成 zh_cn 会怎么样?

CodeIgniter多语言实现方法详解(coded language)

系统中有一些默认的语言包位于system/language/english目录下,当使用系统中提供的一些类报错时会加载对应的语言包。此时系统会先到language/zh_cn目录下去查找,然后去system/language/zh_cn目录下查找,都找不到就提示找不到语言包的错误。所以若更改了language配置,最好拷贝system/language/english下的文件到对应的语言目录下。

这里看起来有点奇怪,为什么不是这种思维:先到language/zh_cn目录下去找,找不到就到system/language/english目录下去找。叫english可能不合适,应该称呼为系统默认的语言包。

2、是否需要使用语言包?

在某个系统中发现这样子的情况, 有些错误提示用的语言包,有些直接用的中文,可能因为多人开发的原因,键的命名也不太规范,经常需要去对比对应的语言文件,导致程序阅读起来相对麻烦,而中文的则没该问题,个人在系统中使用语言包也觉得有点麻烦。所以,不需要考虑多语言的程序尽量还是不要使用语言包的好。

3、如何自动检测语言包?

通常情况下可以根据浏览器的语言类型来判断,PHP中的$_SERVER['HTTP_ACCEPT_LANGUAGE']可以获取到该值,然后根据字符串分隔或者正则匹配等方式即可获取到客户端浏览器默认语言类型。获取到之后通过设置即可。

关于是否确实使用了语言包,可以重写lang函数,带^_^即为使用了语言包,参考如下:

很多情况下多语言的实现都是通过数组的形式来实现,还有一些是.mo的格式,ln多语言的实现方式,php中需要php_gettext扩展支持,详情可查阅相关资料。

更多关于CodeIgniter相关内容感兴趣的读者可查看本站专题:《codeigniter入门教程》和《CI(CodeIgniter)框架进阶教程》

希望本文所述对大家基于CodeIgniter框架的PHP程序设计有所帮助。

CodeIgniter配置之database.php用法实例分析 本文实例分析了CodeIgniter配置之database.php用法。分享给大家供大家参考,具体如下:CodeIgniter的数据库配置文件位于application/config/database.php,该文件中定

CodeIgniter钩子用法实例详解 本文实例讲述了CodeIgniter钩子用法。分享给大家供大家参考,具体如下:CodeIgniter执行流程图中有7个椭圆的框,这表示在执行的过程中埋了7个钩子。那

CodeIgniter自定义控制器MY_Controller用法分析 本文实例讲述了CodeIgniter自定义控制器MY_Controller用法。分享给大家供大家参考,具体如下:Codeigniter所有的控制器都必须继承CI_Controller类,但CI_Controller

标签: coded language

本文链接地址:https://www.jiuchutong.com/biancheng/288197.html 转载请保留说明!

上一篇:CI(CodeIgniter)模型用法实例分析(cgtrader模型)

下一篇:CodeIgniter配置之database.php用法实例分析(codeigniter 教程)

  • 出口退税认定如何办理
  • 抄税是什么意思谁做的事情
  • 固定资产摊余成本例题
  • 2021年专项附加扣除必须要确认吗
  • 事业单位装修费用
  • 资产处置损益属于收入吗
  • 行政事业单位会计制度
  • 建筑业工人工资保障
  • 企业纳税成本管理方案
  • 退货款现金流量表填经营活动的什么科目
  • 前期工程费如何分摊
  • 已缴契税是否可以在土地增值税扣除?
  • 个人转让住房要交哪些税费?
  • 财务费用是否存入银行卡
  • 出售固定资产未收款账务处理
  • 2019小规模纳税人增值税起征点
  • 补提以前年度摊销
  • 合同增值税如何申报
  • 存货质押融资的银行
  • 冲红发票开错了怎么办
  • 第三方要求
  • 城镇地域
  • 华为手机蓝牙传送照片到苹果手机
  • Win10打开浏览器后自动弹出查找框
  • 冲减多计提税费
  • 资产处置收益与固定资产清理
  • 咨询公司流程完整
  • 我告诉你win7旗舰版
  • 材料采购运杂费包括
  • 个人通讯费可以税前扣除吗
  • 专利年费的滞纳金
  • php多级分类
  • thinkPHP模板不存在抛出异常
  • 预收账款和应收账款的转换
  • vue接入高德地图
  • 毕业设计基于plc的全自动包装机
  • 账载折旧金额填哪个数
  • 会展中心高新技术展览
  • 净收入是营业收入吗
  • 增值税地方留存比例2023
  • vant的Uploader 文件上传,图片数据回显问题
  • mysql字符集详解
  • 账簿启用交接表图片
  • 赔偿的费用
  • 代收往来款的会计分录
  • 进口关税完税价格的计算公式
  • 非应税项目是有哪些项目
  • 现金账怎么登记
  • 建筑劳务公司是什么性质
  • 垃圾处理费如何做账
  • 餐饮赠送的菜品需要缴税吗
  • 结转未交增值税为什么是零
  • 接受捐赠的固定资产计入什么科目
  • 自产产品用于职工食堂,确认收入吗
  • 住院伙食补助费每天50
  • 计提附加税减半征收会计分录
  • 销户还能申请抚养费吗?
  • friend怎么用
  • win10系统电脑如何共享
  • WINDOWS SERVER 2008开启桌面主题具体步骤
  • 映泰主板bios设置内存频率
  • centos部署tomcat配置
  • 输入法不显示怎么处理
  • xp桌面图标设置
  • 电脑防火墙在哪里设置
  • Windows8和Windows Phone8中IE10两者相同点和区别
  • 在Linux系统中安装pacman
  • linux 有哪些
  • js怎么理解
  • wifi显示开发状态
  • visual studio 10 cocos2dx项目移植到eclipse的android项目(配置请参照上一篇文章开发环境搭建)
  • 用python画一棵树
  • python中模块的作用
  • jquery定位
  • 重新加载activity
  • Android中使用HttpURLConnection和HttpClient实现GET和POST请求访问网络
  • python仿站软件官网
  • 酒店会场出租如何收费
  • 浙江宁波江北区都有哪些大学?
  • 房屋租赁税房东不承担怎么办理
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设