【发布时间】:2014-02-18 17:26:47
【问题描述】:
似乎使用 gettext 使文本回显的方法是使用以下形式:
<?php echo _("My text"); ?>
当然,当你使用变量时,你不能只添加引号,因为这样变量名将作为文字输出,例如:
<?php echo _("$myText");?>
没用。
在相关帖子php string variables in gettext 中,答案似乎表明您不能使用字符串变量,并且您需要将变量名称 $myText 硬编码到 poedit 文件本身中。当然,这不是最优的,但它可以工作。
然而,当你有一个 foreach 循环吐出一个可以定义数百次的 php 变量时,这是行不通的。如果你有:
<?php foreach($variables as $variable)
{
echo $variable;
}
?>
并且 count($variables) > 100,甚至 10,这种解决方法将令人望而却步。有没有更好的办法??
【问题讨论】:
-
"$var"在 PHP 中只是$var的同义词,只要$var是可以转换为字符串的东西。换句话说,_("$var")将 var 的 CONTENTS 发送到函数中,而不是变量的名称。