【发布时间】:2014-01-16 08:35:31
【问题描述】:
我有一个 ZF2 应用程序,它是一个扩展的骨架应用程序,带有一些额外的模块,如身份验证和授权,在 Zend Server 社区版上运行。
为了让 poedit 找到它必须翻译的字符串,我使用 _("string") 方法,如下所示:
$this->add(array(
'name' => 'eaddress',
'type' => 'Zend\Form\Element\Text',
'attributes' => array(
'id' => 'eaddress',
'type' => 'email',
),
'options' => array(
'label' => _('EMAIL'),
),
));
但是当我这样做时,应用程序不会向浏览器输出任何内容,甚至不会出现错误:
Firefox:连接已重置
Chrome:未收到数据
Safari:{显示 epmty 页面}
有谁知道如何解决这个问题?
提前致谢
【问题讨论】:
-
您的 php/apache error_log 中有什么内容吗?您是否确认
function _($str)实际上是您的问题的原因?最后:你在哪里定义函数? -
日志中没有错误,当我只输入 'label' => 'EMAIL' 时,我得到了预期的结果,但没有翻译。该函数位于 loginForm 的 __contruct 方法中。
-
好的,那将是错误;)您不能在函数内部构造函数。创建一个文件
globalFunctions.php并将其放入/public文件夹。将此添加到您的index.php中,然后一切都会起作用。 -
好的,但是我到底在 globalFunctions.php 中放了什么?是否也可以将其放在 Module.php 中?
-
我猜你可能需要了解更多关于 PHP 的知识。
function _($str) { return $str; }
标签: php zend-framework2 translate