2015-07-28 69 views
0

我有一个关于创建多语言网站的问题,它也允许网站的管理员添加新的语言或编辑语言文字。 我想知道是否存储数据库中的所有语言,并根据用户的语言是一个好主意,从数据库中获取所有的单词,并将它们放入一个数组?通过php制作多语言网站

如果不是,其他解决方案是什么?

最重要的部分是管理员有能力添加新的语言。

谢谢

+0

http://www.bitrepository.com/php-how-to-add-multi-language-support-to-a-website.html – carloabelli

回答

0

只要翻译静态内容gettext实用程序是要走的路。它解决了所有与翻译相关的问题,并让您免去不必要代码的影响。动态内容的翻译可以通过多种方式完成。首先,动态内容的翻译不应该停留在静态资源中,而应该与内容保持一致(就像漂亮的网址),这些内容应该与内容保持在一起。任何会为每种语言创建新表或字段的解决方案都会创建一对一的关系或重复的结构信息,这两者都会影响性能和简单性。创建一个存储原始语言ID的新列可能是一个解决方案,但它需要翻译的其他(子)查询,并且每个项目都有一个基本语言。如果漂亮的url被用作唯一键并且翻译的是url,那么这可能是正确的解决方案。否则,如果唯一键没有被翻译,你甚至可以改变它们以包含语言栏,这样你就可以直接查询每个项目的翻译版本,但是需要其他(子)查询才能找到其他项目语言在所要求的语言中不存在。最后两种方法之间的决定取决于数据的性质。