日期:2008-07-02 作者:喜騰小二 來源:PHPChina
1. 安裝
從 Zend Framework 的網頁上下載最新版本。解壓後,把整個目錄拷貝到一個理想的地方,比如:/php/library/Zend。
打開 php.ini 文件,確認包含 Zend 目錄的路徑在 include_path 裡定義了。以上麵的配置為例,php.ini 中應有類似下麵的條目:
include_path = ".:/php/library"
注意:Windows 下的寫法略有不同,應該類似於 include_path = ".;C:phplibrary"
初始的安裝就這麼簡單。Zend Framework 的一些組件會用到 php 的一些附加模塊。俱體的要求請參考這裡。
2. 項目的目錄結構
如果妳的項目不包含多個模塊,可以用下麵的目錄結構:
application/如果妳的項目要包含多個模塊(比如:博客,社區,等等),那麼建議使用模塊化的目錄結構。
3. 網頁的根目錄
網頁的根目錄應指嚮上述目錄結構中的 html 文件夾。
4. 重寫規則
編輯 html/.htaccess 文件,加入下麵兩行:
RewriteEngine on
RewriteRule !.(js|ico|gif|jpg|png|css)$ index.php注意:上述是針對 apache 的配置。如果是其他的服務器,請參考這裡。
5. 引導程序
編輯 html/index.php 文件,敲入下麵代碼:
require_once 'Zend/Controller/Front.php';
$rootPath = dirname(dirname(__FILE__));
Zend_Controller_Front::run($rootPath . '/application/controllers');上麵代碼的作用是實例化前端控制器(Front Controller)並運行它。
6. 默認的動作控制器(Action Controller)
Zend Framework 的默認路由規則是 http://域名/控制器名/動作(方法)名。例如:
http://example.com/user/show 會被解析到名為 User 的控制器以及該控制器中定義的 show 方法。如果該方法沒有定義,則默認轉到 index 方法。
注意:在代碼中,控制器名的後麵要加上 Controller,而動作名的後麵要加上 Action。
編輯 application/controllers/IndexController.php 文件,輸入:
/** Zend_Controller_Action */
require_once 'Zend/Controller/Action.php';
class IndexController extends Zend_Controller_Action
{
public function indexAction()
{
}
}7. 視圖(页面)腳本
編輯 application/views/scripts/index/index.phtml,輸入:
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
My first Zend Framework App
Hello, World!
8. 錯誤控制器
默認情況下,Zend Framework 的錯誤處理插件是被注冊的。它需要一個錯誤控制器來處理錯誤。缺省的錯誤控制處理被假定為 ErrorController 以及其中定義的 errorAction。
編輯 application/controllers/ErrorController.php,輸入:
/** Zend_Controller_Action */
require_once 'Zend/Controller/Action.php';
class ErrorController extends Zend_Controller_Action
{
public function errorAction()
{
}
}下麵是對應的視圖腳本。編輯 application/views/scripts/error/error.phtml,輸入:
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
Error
An error occurred
An error occurred; please try again later.
9. 運行
好,現在運行網站。在浏覽器中鍵入下麵三個地址,得到的結果應該是一樣的——就是最最常見的“Hello, World!“。
如果是這樣,那麼恭喜妳!