Joomla语言翻译类Jtext用法分析


Posted in PHP onMay 05, 2016

本文实例讲述了Joomla语言翻译类Jtext用法。分享给大家供大家参考,具体如下:

基本使用方法:

Jtext是Joomla中实现多语言翻译的一个对象,最基本的使用方法如下:

Jtext::_('LANGUAGE CODE');

如果是作为变量的话,则直接使用,如:

$var = Jtext::_('LANGUAGE CODE');

如果需要显示出来,可以用echo的命令让它显示,这种方式在模板文件中是最常见的,如:

echo Jtext::_('LANGUAGE CODE');

语言包文件:

Joomla可以支持多语言,每一种语言包的文件以文件夹的形式存在languages的文件夹下,如:

英文的语言包的文件夹名是: languages/en-GB/

繁体中文的语言包的文件夹名称是:languages/zh-TW/

每种语言有一个基本的语言包文件,这个文件在Joomla的任何一个程序运行中都会被载入,如:

英文的语言包文件为:en-GB.ini

繁体中文的语言包文件为:zh-TW.ini

每个组件(Component)的每个语言都会有一个语言包文件,这个语言包文件默认在该组件运行时才被载入,如:

com_community的英文语言包为:en-GB.com_community.ini

com_community的中文语言包为:zh-TW.com_community.ini

如何跨组件引用语言包文件:

如果要使用其他组件的语言包,必须先引入该组件的语言包才可以使用。如com_community中要使用com_stock的语言包,可以采用以下的方式引入:

$lang =& JFactory::getLanguage();
$lang->load('com_stock');//组件的名称,即语言包文件名的中间部分:en-GB.com_stock.ini

高级使用方法:

如果在要翻译的语句中出现变量,那么需要用到JText::sprintf()的方法进行翻译,JText::sprintf()支持在语言包中使用变量,最多可以支持3个变量。JText::sprintf()的格式如下:

Jtext::sprintf('LANGUAGE CODE',$var1,$var2,$var3);

对应的语言包的写法:

LANGUAGE CODE=语言代码%1$s,%2$s,%3$s

如:

JomSocial有一段代码是这样写的,需要传入会员链接和名称即视频的链接三个变量,程序的代码是这样写的:

JText::sprintf('CC ACTIVITIES FEATURED VIDEO', $ownerUrl, $ownerName, $videoUrl);

对应的语言包则是这样写的:

CC ACTIVITIES FEATURED VIDEO=<a href=\”%1$s\”>%2$s</a>的 <a href=\”%3$s\”>??</a> 被列??精?。

希望本文所述对大家基于joomla程序设计有所帮助。

PHP 相关文章推荐
在PHP中使用curl_init函数的说明
Nov 02 PHP
php数组函数序列之array_push() 数组尾部添加一个或多个元素(入栈),返回新长度。
Nov 07 PHP
对于PHP 5.4 你必须要知道的
Aug 07 PHP
PHP对文件进行加锁、解锁实例
Jan 23 PHP
PHP框架性能测试报告
May 08 PHP
php实现跨域提交form表单的方法【2种方法】
Oct 17 PHP
PHP中的use关键字及文件的加载详解
Nov 28 PHP
PHP基于GD库实现的生成图片缩略图函数示例
Jul 05 PHP
PHP基于XMLWriter操作xml的方法分析
Jul 17 PHP
Ajax+Jpgraph实现的动态折线图功能示例
Feb 11 PHP
什么是PHP7中的孤儿进程与僵尸进程
Apr 14 PHP
Laravel 模型关联基础教程详解
Sep 17 PHP
Yii2超好用的日期和时间组件(值得收藏)
May 05 #PHP
joomla实现注册用户添加新字段的方法
May 05 #PHP
Joomla数据库操作之JFactory::getDBO用法
May 05 #PHP
100多行PHP代码实现socks5代理服务器[2]
May 05 #PHP
PHP随机数 C扩展随机数
May 04 #PHP
PHP正则表达式过滤html标签属性(DEMO)
May 04 #PHP
Joomla使用Apache重写模式的方法
May 04 #PHP
You might like
理解php原理的opcodes(操作码)
2010/10/26 PHP
yii框架中的Url生产问题小结
2012/01/16 PHP
一个严格的PHP Session会话超时时间设置方法
2014/06/10 PHP
朋友网关于QQ相关的PHP代码(研究QQ的绝佳资料)
2015/01/26 PHP
解决php表单重复提交实现方法
2015/09/29 PHP
php提交过来的数据生成为txt文件
2016/04/28 PHP
php求今天、昨天、明天时间戳的简单实现方法
2016/07/28 PHP
javascript HTMLEncode HTMLDecode的完整实例(兼容ie和火狐)
2009/06/02 Javascript
JavaScript Konami Code 实现代码
2009/07/29 Javascript
js中更短的 Array 类型转换
2011/10/30 Javascript
jQuery随机切换图片的小例子
2013/04/18 Javascript
jQuery实现鼠标经过事件的延时处理效果
2020/08/20 Javascript
AngularJS指令用法详解
2016/11/02 Javascript
JS制作类似选项卡切换的年历
2016/12/03 Javascript
Java与JavaScript中判断两字符串是否相等的区别
2017/03/13 Javascript
Angular2使用jQuery的方法教程
2017/05/28 jQuery
H5实现仿flash效果的实现代码
2017/09/29 Javascript
vue router带参数页面刷新或回退参数消失的解决方法
2019/02/27 Javascript
Vue实现日历小插件
2019/06/26 Javascript
Vue数据驱动表单渲染,轻松搞定form表单
2019/07/19 Javascript
jQuery与原生JavaScript选择HTML元素集合用法对比分析
2019/11/26 jQuery
JavaScript原型继承和原型链原理详解
2020/02/04 Javascript
[59:00]DOTA2-DPC中国联赛 正赛 Ehome vs PSG.LGD BO3 第一场 3月7日
2021/03/11 DOTA
Python实现多线程下载文件的代码实例
2014/06/01 Python
Python的Django框架中settings文件的部署建议
2015/05/30 Python
python实现狄克斯特拉算法
2019/01/17 Python
使用OpenCV circle函数图像上画圆的示例代码
2019/12/27 Python
Selenium webdriver添加cookie实现过程详解
2020/08/12 Python
python基于pexpect库自动获取日志信息
2021/02/01 Python
ebookers英国:隶属全球最大的在线旅游公司Expedia
2017/12/28 全球购物
英国Boots旗下太阳镜网站:Boots Designer Sunglasses
2018/07/07 全球购物
英国高街奥特莱斯:Highstreet Outlet
2019/11/21 全球购物
static函数与普通函数有什么区别
2015/12/25 面试题
客房主管岗位职责
2013/12/09 职场文书
设计大赛策划方案
2014/06/13 职场文书
报名委托书
2015/01/29 职场文书