iam在我的本地机器(osx)上使用ZF 1.11.x一切都像excepted一样,但是当我将我的应用程序部署到生产服务器时出现错误:
mod_fcgid:stderr:PHP致命错误:未捕获的异常 带有消息的'Zend_View_Helper_Placeholder_Container_Exception' '无法嵌套headScript捕获' /var/www/virtual/website/library/Zend/View/Helper/HeadScript.php:146
我使用viewHelper在layout.phtml中设置一些变量。我可以通过将它们放在脚本标签中来修复它,但我想知道为什么会发生这种错误..
答案 0 :(得分:1)
根据源代码here,当您尝试嵌套captureStart()
次调用时会发生此异常。
由于它不会在本地发生,我怀疑您的提供商/生产服务器是以特定方式设置的 - 当您不使用专用根服务器时通常就是这种情况......
答案 1 :(得分:0)
对于我们来说,这个问题是由于没有为PHP启用短标签引起的。
编辑你的php.ini,更改" short_open_tag"到" on"
基本上我们使用以下内容来结束捕获。
<?
$this->inlineScript()->captureEnd();
?>
但是如果没有启用短标签,则无法识别这个并且随后调用$ this-&gt; inlineScript() - &gt; captureStart();会崩溃。