位置: 编程技术 - 正文

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 教程)

  • 小规模水利基金优惠政策2023
  • 自查补缴增值税的会计处理
  • 企业所得税的计算公式
  • 审核通过的红字发票怎么作废
  • 按季度支付贷款利息权责发生制
  • 纳税人多缴税款的退还期限
  • 事业单位退休职业年金发放多少个月
  • 房产开发后自用需要交土地增值税吗
  • 空白增值税报表在哪下载
  • 分配现金股利的现金流
  • 进项税额抵减欠税后附加税可以抵减吗
  • 网上报税费用如何抵扣账务怎么处理?
  • 出口发票金额和备注了差了1分钱
  • 老会计有多厉害
  • 独资企业需要交企业所得税吗
  • 汇兑损失的原因
  • 手撕发票流程
  • 营业外支出所得税汇算要调增吗
  • 增值税交完之后还要交什么税
  • 财务费用属于什么会计科目类别
  • 小规模纳税人月销售额不超过10万免征
  • 应收账款坏账准备是信用减值损失还是资产
  • 苹果助手hi
  • win11开机选择系统
  • 影响资金等值的三个因素
  • pniopcac.exe是什么进程
  • 境外资金购买境内物业
  • 整理php防注入和注入
  • php关键字的意思
  • 武陵山脉海拔
  • 免抵退税帐务处理
  • vue路由传参的几种方式
  • CSS渐变背景应用
  • tracetcp命令
  • ps制作折扇效果图
  • 探望生病职工的话语
  • 织梦cms官网
  • java mongodb模糊查询
  • 公司处置汽车
  • 如何查询以前申请的新西兰签证记录
  • 差额征税好吗
  • 开自家车出差怎样报销
  • 企业的经营业务
  • 城镇土地使用税的计税依据
  • 存货报废进项税转出分录
  • 职工食堂费列入哪里
  • 去年购进的货物怎么做账
  • 股权变更的股东个税缴纳
  • 资本公积金转增股本是利好吗
  • 进项转出再转入
  • 桩基检测费一定要收吗
  • 所有者权益的来源包括
  • 定额发票收入怎么样确定
  • 不提供银行流水的理由
  • 销项负数发票开了需要给对方重开发票吗?
  • 减免税款月末是否结平
  • 财务人员需要填报的报表有哪些
  • SQLServer XML数据的五种基本操作
  • ubuntu20.04.2
  • Linux(CentOS)用split命令分割文件的方法
  • 特俗字符
  • linux网络设置在哪里
  • mac如何中文输入法
  • msxct.exe - msxct是什么进程 有什么用
  • win8怎么删除所有东西
  • backtracker
  • 根据安全生产法的规定,生产经营单位
  • Android Error: No resource found ··· 'layout_above' with value '@id/···
  • jquery 写文件
  • nodejs socket框架
  • android单选
  • jquery点击事件写法
  • UIAutomator在AndroidStudio中的使用
  • jquery基础知识梳理
  • 深圳零申报怎么报税的具体流程
  • 四川国家税务局官网
  • 风险研判能力不足的原因
  • 特定公共服务是什么意思
  • 怎样打印护士资格证
  • 国税上海税务局官网
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设