一开始,制作XML
文档表单的思想很容易做到,只看到XML是无效的。
另一种是不同的模板,但有一个小问题,有些单词,如时间
提示是不确定的,可能是分钟,一天,也可以添加S到复数。
这是一个数组,数组必须是PHP
文件中的变量,而且很难做一些
扩展(我知道这是我的想法)。
最后一个txt
文本文件格式,还有效率的担心,打开文件,
搜索字符串,字符串,但最后
运行一般机器约0.0004秒,这出乎我的意料,它是非常缓慢的,毕竟,被称为反复。
好的,在代码上
复制代码代码如下所示:
课堂
语言 {
静态lanobject美元;
公共$
类型;单元、仪表板、菜单、其他
公共$
局域网; /语言
文件中的私有特殊$;
私有
函数__construct()
{
如果(isset($ _get { 'hl})| | isset($ _post { 'hl ' }))
{
开关(isset($ _get { 'hl ' }){ }:'hl _get美元的美元'hl_post { })
{
case'en:
美元->局域网= *;
case'zh:
美元->局域网= 'zh;
case'all:
美元->局域网=;
违约:
此
错误();
}
}
其他的
美元->局域网= isset($ _cookie { 'hl ' }){ }:_cookie美元'hl'zh;
}
公共静态函数GetObject()
{
如果(!(自::lanobject美元是自))
自::lanobject美元=新的语言();
回归自我::lanobject美元;
}
公共
功能的LTO($键) / /美元关键是英语
{
如果($ >局域网)!= 'zh)
返回$键;
如果(空($这个特殊的)$特殊是空的/如果)
{
如果(isset(美元->型))
美元->特殊= file_get_contents(美元->型。.txt);
其他的
返回$键;
}
搜索$(搜索);
}
私有函数搜索($ searchtozh)PHP /字符串
{
key_start美元= strpos(美元->特殊,searchtozh美元);
key_end美元= strpos(美元->特殊,,key_start美元);
len_str美元= strlen($ searchtozh);
for_sub美元美元美元= key_start + len_str + 1;
返回substr(美元->特殊,for_sub美元美元美元,key_end for_sub);
}
}
Strpos();是找到一个字符串的第一个
位置,如wo'inHello World,返回值为6
substr();是截取字符串的一部分
接下来是添加到调试中的代码。
复制代码代码如下所示:
$ LA =语言::GetObject();
为拉->类型= 'unit;
美元洛杉矶-> LTO('min);
回声';
洛杉矶-> LTO(美元你好);
LTO(这是要
翻译成英文);
unit.txt文件的内容格式
你好-你好分钟-分钟分钟分钟分钟-分钟
U3000
特殊设计的美元对于全球以及调用的思想(LTO)超过一次,如果太浪费加载文件。
美元的公共型设计是考虑加载文件的效率,有时不需要
显示的前几天,最好是根据不同的使用这些类型的,负责的menu.txt菜单的翻译,也有特殊的
操作,如
删除、TXT文本的翻译。这可以让你自由
设置文字负载
语言也可以自由设置。
嗯,这个
程序可以改进,而且我没有在HTTP请求的客户端语言中设置$ LAN。