簡介
Zend Framework 終於推出 1.8 版了;這次改版最大的特色,就是加入了在命令列建立專案的功能 (類似 CakePHP 的 bake 指令) 。
詳細特色如下:
- Zend_Tool
- Zend_Application
- Zend_Loader_Autoloader and Zend_Loader_Autoloader_Resource
- Zend_Navigation
- Zend_CodeGenerator
- Zend_Reflection
- Zend Server backend for Zend_Cache
- Zend_Service_Amazon_Ec2
- Zend_Service_Amazon_S3
- Incorporated Dojo 1.3
- Added support for arbitrary Dojo Dijits via view helpers
- Zend_Filter_Encrypt
- Zend_Filter_Decrypt
- Zend_Filter_LocalizedToNormalized and _NormalizedToLocalized
- Support for file upload progress support in Zend_File_Transfer
- Translation-aware routes
- Route chaining capabilities
- Zend_Json expression support
- Zend_Http_Client_Adapter_Curl
- SOAP input and output header support
- Support for keyword field search using query strings
- Support for searching across multiple indexes in Zend_Search_Lucene
- Significant improvements for Zend_Search_Lucene search result match highlighting capabilities
- Support for page scaling, shifting and skewing in Zend_Pdf
- Zend_Tag_Cloud
- Locale support in Zend_Validate_Int and Zend_Validate_Float
- Phonecode support in Zend_Locale
- Zend_Validate_Db_RecordExists and _RecordNotExists
- Zend_Validate_Iban
- Zend_Validate_File_WordCount
相關新聞與資源如下:
下載與安裝
首先連到官方下載頁面,下載最新版的 Zend Framework (直接下載連結在最底下) ;如果不需要 Dojo 的話,下載 minimal 版本就可以了。
下載回來解開放到任一資料夾 (假設是在 C:\ZF ) ,裡面應該會有 bin 和 library 兩個資料夾。將 C:\ZF\bin 加入系統路徑變數中,讓系統在命令列模式中可以直接找到底下的 zf.bat 檔。
建立專案
接下來進入命令列模式,並將工作路徑切換到 Web 根目錄 (假設為 D:\WEB ) 下;然後輸入:
1 2 | |
其中 first 就是專案名稱, Zend Framework 也會用它當做專案的資料夾名稱。透過這行指令,我們就完成了 Zend Framework 專案的建立。
現在連上本地端的 Web Server 瀏覽剛建立好的網站 (http://localhost/first/public/) ,你就能看到:

是不是非常簡單呢?
註:如果你不想讓 public 這個目錄出現,那麼你要就得將它設定為 Web Server 的虛擬網站根路徑;例如 Apache 的 VirtualHost 。
現在 C:\WEB\first 就是我們的專案目錄,後面我們工作的環境就在這裡面。
再將工作路徑切換到 D:\WEB\first 下,你會看到以下的目錄結構:

這個目錄結構是 Zend Framework 預設的,我目前還沒研究出可以改變它的方法。而 .zfproject.xml 則是記錄該專案相關資訊的 XML 檔案,接下來要進行的操作都是依賴這個 XML 檔案,所以請不要刪掉它。
建立 Controller 及 Action
請將工作目錄切換到剛剛建立好的 D:\WEB\first 下,如果要建立 Controller (例如 blog ) 則可以輸入:
1 2 3 4 5 6 | |
這樣就會在 application/controllers 目錄下建立一個 BlogController.php 。
如果要在 BlogController.php 中加入一個名為 add 的 Action ,則可以輸入:
1
| |
這樣 Zend Framework 會自動幫我們在 BlogController.php 中加入一個 addAction 方法,並在對應的 views/scripts/blog 目錄下建立一個 add.phtml 樣版檔。
註: create view 指令經測試還有問題,看來還是得等下一個版本。
心得
透過命令列來建立或設定專案,好像已經是各家 Framework 必備的功能了。雖然 Zend Framework 在這方面起步較晚,但總算是聊勝於無。
不過 Zend Framework 最大的優勢在於所有它的工具都是可以讓我們再自訂過,只要能夠將這些工具的用法與核心研究清楚,相信要駕馭它們也不會是難事了。