Zend Framework - 简单的引导程序编辑导致应用程序失败

时间:2011-03-17 23:22:35

标签: php zend-framework bootstrapping

我正在阅读Zend Framework 1.8 Web开发手册,我正在介绍如何编辑bootstrap.php以初始化文档类型。但是,当我插入该函数时,导航到我的项目时出现服务器错误。

我将以下代码添加到Bootstrap.php

后,应用程序才会中断
<?php

class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{

    protected function _initViewSettings()
    {
        $this->bootstrap('view');
        $view = $this->getResource('view');
        $view->doctype('XHTML1_STRICT');
    }

}

2 个答案:

答案 0 :(得分:4)

马修关于这个主题的文章让我非常清楚:

http://weierophinney.net/matthew/archives/230-Quick-Start-to-Zend_Application_Bootstrap.html

我建议阅读整篇文章以及链接的手册页:

http://framework.zend.com/manual/en/zend.application.available-resources.html

因此,如果您要初始化视图,则可以执行以下操作:

protected function _initView()
{
    $view = new Zend_View();
    $view->doctype('XHTML1_STRICT');
    // do other stuff to the view...
    return $view;
}

其他人说的是正确的。但是,我找到了Matthew描述的方法,并使用application.ini来提供最干净的引导程序。请阅读本文,因为它解释了依赖关系和命名约定。

您似乎没有配置错误报告设置来显示详细错误。如果更改此设置,您将看到更简洁的错误,而不仅仅是一般的HTTP 500。

答案 1 :(得分:1)

确保您的配置中包含视图资源。否则,将没有view资源。设置视图编码也是很好的,所以用一块石头杀死两只鸟

resources.view.encoding = "UTF-8"

我的Bootstrap.php文件(ZF 1.11.4)中有以下内容,它可以正常使用

protected function _initDoctype()
{
    $this->bootstrap('view');

    /* @var $view Zend_View */
    $view = $this->getResource('view');

    $view->doctype(Zend_View_Helper_Doctype::HTML5);
}