位置: 编程技术 - 正文

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

  • 待认证进项税额是什么情况下用的
  • 足浴行业是否需要缴纳文化事业建设税
  • 电子发票错误怎么重开
  • 出差补贴需要交税
  • 保安服务业务
  • 子公司注销母公司合并报表处理
  • 结构性存款是
  • 汽车区域差价
  • 事业单位已核销怎么处理
  • 小企业净资产收益率
  • 收到上个月支付的短信
  • 取得特许权使用费收入增值税税率
  • 苗木增值税发票税率
  • 银行卡刷卡消费限额
  • 工程预算调整的主要内容
  • 物业代收水电费,业主不交怎么办
  • 银行对账单是否属于会计档案
  • 有限合伙企业需要承担无限连带责任吗
  • 成本费用怎么做分录
  • 盈亏平衡点定价法例题及答案
  • 这个月只有销项没有进项怎么申报
  • 其他应付款辅助核算怎么挂
  • 员工工伤一次性赔偿申请书
  • 自建用地是什么性质
  • php循环结构有哪几种语句
  • 房地产资质代理公司排名
  • 固定资产出租需交什么税
  • 公司员工意外险怎么买
  • 进程antimalware service
  • ChatGPT进阶-提示词中文版
  • addr指令
  • 软件折旧费
  • 直接进入税金及附加的科目
  • python有没有指针
  • python 如何
  • 小微企业增值税免税政策2023年
  • 管理费用怎么入账
  • 查询公司对公账户
  • python中insert函数怎么用
  • syslog使用
  • phpcms是什么框架
  • 应付账款尾差如何处理
  • 应交税费的明细账怎么登记
  • 个体户需要实缴吗
  • 其他应付款可以转主营业务收入吗
  • 企业技术转让会计分录
  • 付款金额与增值金额区别
  • 固定资产怎么做账
  • 检测费用的会计分录
  • 缴纳房产税和城镇房产税
  • 固定资产取得时按什么入账
  • 营改增后建筑行业进项税能抵扣吗
  • 存货总账根据什么填列
  • MySQL 5.6 (Win7 64位)下载、安装与配置图文教程
  • mysql 修改配置
  • 淘宝pc端打不开
  • 如何使用光盘做启动盘
  • 怎么删除电脑windows
  • win10系统mmc不能打开文件
  • 如何设置自动删除安装包
  • ubuntu的安装步骤
  • centos state down
  • macos桌面
  • go进程管理
  • centos安装完为什么没有桌面
  • 微软官方确认:Xbox不会出现在E3 2023实体展
  • linux userdel
  • linux.rpm
  • css判断语句
  • cocos2dx 2.2.2
  • js中的filter方法
  • JavaScript Math.ceil() 函数使用介绍
  • express的中间件
  • unity游戏项目开发教程
  • vue stylus
  • javascript如何
  • html css js 实战案例
  • 安卓通用代码
  • 财税刘毅
  • 移动手机话费代扣
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设