【发布时间】:2010-02-23 14:58:20
【问题描述】:
到目前为止,我看到的关于使用 gettext 而不是数组的唯一两个好处是我不必创建“问候”“子数组”(或其他任何名称)。而且我不必为“默认语言”创建文件夹。
在多语言网站上使用 gettext 和 php 数组还有其他优点和缺点吗?
使用GETTEXT:
西班牙语/messages.po:
#: test.php:3
msgid "Hello World!"
msgstr "Hola Mundo"
index.php:
<?php echo _("Hello World!"); ?>
index.php?lang=spanish:
<?php echo _("Hello World!"); ?> turns to Hola Mundo
使用 PHP 数组:
lang.en.php
<?php
$lang = array(
"greeting" => "Hello World",
);
?>
lang.es.php
<?php
$lang = array(
"greeting" => "Hola Mundo",
);
?>
index.php:
<?php echo $lang['greeting']; ?> greeting turns to Hello World
index.php?lang=spanish
<?php echo $lang['greeting']; ?> greeting turns to Hola Mundo
(我一开始是用gettext,但我的共享免费托管Zymic不支持它。我不想使用Zend_translate,我发现它对我的简单任务来说太复杂了,所以我最终使用了php @ 987654328@,但后来有人告诉我应该使用数组)
【问题讨论】:
标签: php arrays multilingual gettext