2011-03-17 102 views
1

我正在通過Zend Framework 1.8 Web開發書,並且介紹瞭如何編輯bootstrap.php以爲您初始化一個doctype 。但是,當我插入函數時,導航到我的項目時出現服務器錯誤。Zend Framework - 簡單的引導編輯導致應用程序失敗

應用程序後,纔將下面的代碼添加到我的bootstrap.php

<?php 

class Bootstrap extends Zend_Application_Bootstrap_Bootstrap 
{ 

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

} 
+0

你會得到什麼錯誤? – azat 2011-03-17 23:24:05

+0

HTTP錯誤500(內部服務器錯誤):服務器嘗試完成請求時遇到意外情況。當我拿出這個功能時,頁面加載我的視圖就好了。 – ThinkingInBits 2011-03-17 23:25:04

+0

您能否進一步縮小範圍,只有一行? – 2011-03-17 23:29:39

回答

4

馬修的文章對我很清楚這個話題做的事情:

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

我建議你閱讀整篇文章以及鏈接的人UAL頁:

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

請確保您有在你的配置視圖資源的破壞。否則,將不會有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); 
} 
相關問題