PHP本地化
我正在开发一个小项目,包括注册,登录,密码重置和后端用户管理.我必须为不同的语言创建翻译文件,而不是使用像gettext这样的东西(我一无所知),我决定使用静态数组为每个语言文件实现一个非常简单的方法,如下所示:
function plLang($phrase) { $trimmed = trim($phrase); static $lang = array( /* ----------------------------------- 1. REGISTRATION HTML ----------------------------------- */ 'LNG_1' => 'some text','LNG_2' => 'some other text',etc. ... ); $returnedPhrase = (!array_key_exists($trimmed,$lang)) ? $trimmed : $lang[$trimmed]; echo $returnedPhrase; } 它工作正常,在这个阶段非常快,但我的标记现在充满了php语言标签,我不确定我做出了正确的决定.我以前从未这样做过,所以我不知道我期待什么.似乎在我完成所有工作时,这个文件将长达一英里. 这是一个很好的方法吗?你有什么更好的建议吗? 谢谢!
这就是我在我的cms中做的事情:
>对于我开发的每个插件/程序/实体(您的名字),我创建一个/ translations文件夹. 整个事情都是在我考虑性能和兼容性的情况下开发的. 在你的情况下,这样的文件中的行可能是: 在en.txt中 {"id":"LNG_1","str":"My word"} 在de.txt中 {"id":"LNG_1","str":"Mein Wort"} 当前语言可以存储在会话中,如$_SESSION [“language”];并使用 lang("LNG_1"); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |