2012-01-21 139 views
-1

我在这里有一个简单的问题。我如何使用PHP构建多语言网站?使用php创建多语言网站

我需要这样做的工具是什么?另外,如果我打算使用框架(如cakePHP或symfony等)构建我的网站,那么这些框架的功能是否允许我这样做?

请给我最好,最简单直接的解决方案。

在此先感谢

+0

Symfony和Zend FRramwework都有可用的i18n/i10n特性/组件。我认为蛋糕和CI确实做到了,但我不是100%。 – prodigitalson

+0

您是否尝试过查看这些框架以查看它们是否支持任何本地化功能?这就是你应该首先做的,一些真正的研究,而不是问社区如何做到这一点。我很确定在谷歌和堆栈溢出上有很多点击。快速搜索告诉我,很多人都在使用gettext。 http://stackoverflow.com/questions/2790952/php-localization-best-practices-gettext – tjarratt

+0

答案是肯定的。 – deceze

回答

3

如果你想建立一个多语种网站,你最好的选择是使用一些gettext实现。 PHP有这个和CakePHP这样的大多数框架支持这个(搜索的关键字是i18n(国际化的简称)。

应用程序中的所有字符串都需要通过gettext函数发送在PHP中,该函数的别名为__()让你的字符串将是这样的:

<?php 
echo __('Hello world'); 
?> 

然后你需要生成与他们的翻译一起存储这些字符串所谓的.po文件.po文件的一个示例项看起来像这样

msgid "Hello world" 
msgstr "Ola mundo" 

您的应用程序需要为正确的语言加载正确的.po文件。 CakePHP为此做了a nice manual,但其他框架也内置了这个功能。

+1

为了澄清,在PHP中,别名是'_()',而在CakePHP中它是'__()' –