mmqfilho / languages
用于使用多个翻译文件的类
1.2.4
2017-10-17 20:16 UTC
Requires
- php: >=5.3.0
This package is not auto-updated.
Last update: 2024-09-14 18:26:12 UTC
README
版本:1.2.4
日期:2017/10/17
作者:Marcos Menezes <mmqfilho@gmail.com>
目录结构
| your_project_root
|-# class (class folder)
| |-# Mmqfilho
| |-# Languages
| |- Language.php (class file)
|
|-# languages (language folder)
| |-# en (english language folder)
| | |- your english language files
| |
| |-# pt-br (brazilian portuguese language folder)
| | |- your brazilian portuguese language files
| |
| |-# xxxx (other languages folder)
| |- others language files
如何使用
包含文件并设置命名空间
include_once 'class/Mmqfilho/Languages/Language.php';
or use autoload composer
include_once YOUR_VENDOR_DIR . '/autoload.php' ;
use mmqfilho\Languages\Language as Lang;
创建对象
$objLang = new Lang();
或者创建对象并设置要使用的语言
$objLang = new Lang('en');
或者使用设置器
$objLang->__set('default_language', 'en');
(可选) 如果需要,设置语言文件夹(末尾不带斜杠)
$objLang->__set('directory', 'path/to/your/language/folder');
(可选) 如果未找到文本,显示或隐藏消息
$objLang->__set('show_message_not_found', true);
(可选) 如果未找到文本,显示的消息
$objLang->__set('message_not_found', 'I dont like default message');
(可选) 在目录中递归查找语言文件的尝试次数(默认为3)
$objLang->__set('recursiveDirCount', 3);
(可选) 设置要加载的文件类型(json或xml)(默认文件类型为json)
$objLang->setXml();
or
$objLang->setJson();
显示文本
- 参数1是.xml前缀的xml文件名
- 参数2是xml标签名
- 参数3(可选)是变量数组
echo $objLang->load('index', 'welcome');
or with an array with one or many variables
echo $objLang->load('index', 'yourName', array('Marcos'));
echo $objLang->load('index', 'yourFullName', array('Marcos', 'Menezes'));
XML文件
在<languages>
标签中放置您自己的翻译标签
如果您使用html标签或特殊字符,请将其放入CDATA标签中。
如果您使用变量发送参数,请将'%s'放入标签
<?xml version="1.0" encoding="UTF-8"?>
<!-- English -->
<languages>
<welcome>Welcome</welcome>
<welcomeCData><![CDATA[<strong>Warning:</strong> Welcome %s.]]></welcomeCData>
<yourName><![CDATA[Your name is: %s.]]></yourName>
<yourFullName><![CDATA[Your full name is: %s %s.]]></yourFullName>
</languages>
JSON文件
如果您使用变量发送参数,请将'%s'放入标签
{
"welcome": "Welcome to json version",
"welcomeTag": "<strong>Warning:</strong> Welcome json.",
"version": "Version: %s"
}