什么是更好的网站本地化方法?

时间:2010-10-21 09:33:27

标签: php mysql localization

我最近加入了一个团队,以前是一个单人秀,以维护和开发公司的PHP-mysql网站。

当前的本地化方法是,对于站点的每个部分,都存在一个以_en.php和_fr.php结尾的文件,其中包含具有相应语言文本的相同命名变量的长列表。在每个内容页面的顶部,确定用户语言,然后加载适当的“词典”文件。

我试图推广另一种方法是使用像(id,code,en,fr)这样的数据库表和一个函数来查找当前页面中的正确翻译。

我的老板告诉我,第一种方法的好处是:为每个翻译创建一个上下文,并在源代码控制下进行翻译

他对我提议的方法的担忧是缺乏这些东西,并且不喜欢在网站上有两个翻译系统的想法。

我担心的是,这是代码文件中的数据,我被教导为一个坏主意。要搜索字符串,您必须使用ide搜索工具,因此我没有看到无程序员如何轻松编辑这些工具。

那么,他的方法更好吗?我的更好但是只是勉强而不值得摇摇欲坠吗?当前的系统是一个等待发生的灾难,我不应该放手吗?

1 个答案:

答案 0 :(得分:2)

我认为对于界面事物(名称,姓氏,按钮中的文本等等)使用资源文件更自然。在.NET中我们使用.resx,在PHP中,包含文件就足够了。

要使用包含的存档不耗费资源,它将解析XML。

如果我们在谈论大文本,我会将它们放在一个带有不同代码的数据库中,仅仅因为通常我会有一个后台修改这些内容,而不是性能问题。

请记住,Db访问也在消耗,这取决于用户数量。