Zend Framework是一套網站開發框架,包含了MVC模式以及眾多解決特定問題的組件。
ZendFramework框架組件:
1 Zend_Controller : 此模塊為應用程序提供了全面的控制,將請求轉化為特定的行為并確保執行
2 Zend_Db : 此模塊基于PHP數據對象(PDO)并提供了一種通用方式來訪問數據庫
3 Zend_Feed : 此模塊使 使用RSS和Atom提要變得簡單
4 Zend_Filter : 此模塊提供字符串過濾函數,如 isEmail() 和 getAlpha()
5 Zend_InputFilter : 對于Zend_Filter,此模塊是用來操作數組的,如表單輸入
6 Zend_HttpClient : 此模塊可輕易的執行一個HTTP請求
7 Zend_Json : 此模塊可以將PHP對象轉換為Javascript對象符號
8 Zend_Log : 此模塊提供通用日志功能
9 Zend_Mail : 此模塊使您能夠發送文本文件和多部分MIME電子郵件
10 Zend_Mime : 此模塊被 Zend_Mail 來解碼MIME信息
11 Zend_Pdf : 此模塊用來創建,加載以及編輯PDF文件
12 Zend_Search : 此模塊可以使您能在現有文本上執行復雜搜素
13 Zend_Service_Amazon, Zend_Service_Flickr以及Zend_Service_Yahoo : 提供WEBService的簡單API訪問
14 Zend_View : 此模塊處理 MVC 模式中的View部分
15 Zend_XmlRpc : 此模塊能夠輕易的建立XML_RPC客戶機
MVC模式
MVC模式存在的實質意義是將設計,編碼以及數據存取三部分分開,這樣可以使設計人員,編碼人員,DBA各司其職,協同工作,MVC將一個項目分成了三層:
模型層: 由真實數據的表示組成,在數據庫中的表示主體上“建模”了它們的結構,從而組成了模型層。
視圖層: 由一些邏輯組成,這些邏輯定義了數據如何展現,他并不關心這些數據是什么,他只關心如何展現。該層不包括任何邏輯,只是將數據表現出來。
控制器: 定義了數據是什么,控制器是存放邏輯的地方,在Zend框架中,該層控制了要執行的行為。比如:如果我們想顯示單個的某條信息,那么職責就被解釋為:信息對象具有一個控制器,該控制器定義了當調用顯示行為時所發生的事情。該顯示行為回調以從模型(或者說是數據庫,又或者是其他的持久性數據容器)中獲取需要的數據,然后將這些字段(標題,內容之類),填入到視圖中,該視圖就將這些信息簡單的顯示到瀏覽器中。
使用Zend框架的編碼準則
當您為Zend框架編碼或者使用Zend框架進行開發時,應當遵循默寫編碼準則,這些編碼準則是為了使團隊開發變得簡單而設計的,這很重要,因為現階段的軟件開發大多是團隊協同工作的。
1 確保文件整潔,在文件頭,標準的四格縮進前不能有任何前導或后置的空格,這些空格會調用Web服務器導致以外的發送內容。
2 在類成為Zend框架的一部分時,類名以Zend_開頭,而不是在使用Zend框架時,類以Zend_開頭。
3 在函數名中下劃線是禁止的,而是以小寫字母開頭的,大小寫間隔的方式,如getTodayDate()
4 只有當變量是private或protected類型時,才以下劃線開頭
5 將所有的變量聲明為private protected或者public,而不要使用var
6 使用標準的php標記: <?php ?> 而不是<? ?>
7 確保您的代碼利于閱讀,在操作符前后,加入空格。
8 如果必須通過引用傳值,那只能在函數聲明時這樣做,調用時通過引用傳值是不允許的。
9 任何PHP文件都必須包括能被 PhpDocument 閱讀的文檔,并且編碼準則指定了特定的最少標記。
ZendFramework框架組件:
1 Zend_Controller : 此模塊為應用程序提供了全面的控制,將請求轉化為特定的行為并確保執行
2 Zend_Db : 此模塊基于PHP數據對象(PDO)并提供了一種通用方式來訪問數據庫
3 Zend_Feed : 此模塊使 使用RSS和Atom提要變得簡單
4 Zend_Filter : 此模塊提供字符串過濾函數,如 isEmail() 和 getAlpha()
5 Zend_InputFilter : 對于Zend_Filter,此模塊是用來操作數組的,如表單輸入
6 Zend_HttpClient : 此模塊可輕易的執行一個HTTP請求
7 Zend_Json : 此模塊可以將PHP對象轉換為Javascript對象符號
8 Zend_Log : 此模塊提供通用日志功能
9 Zend_Mail : 此模塊使您能夠發送文本文件和多部分MIME電子郵件
10 Zend_Mime : 此模塊被 Zend_Mail 來解碼MIME信息
11 Zend_Pdf : 此模塊用來創建,加載以及編輯PDF文件
12 Zend_Search : 此模塊可以使您能在現有文本上執行復雜搜素
13 Zend_Service_Amazon, Zend_Service_Flickr以及Zend_Service_Yahoo : 提供WEBService的簡單API訪問
14 Zend_View : 此模塊處理 MVC 模式中的View部分
15 Zend_XmlRpc : 此模塊能夠輕易的建立XML_RPC客戶機
MVC模式
MVC模式存在的實質意義是將設計,編碼以及數據存取三部分分開,這樣可以使設計人員,編碼人員,DBA各司其職,協同工作,MVC將一個項目分成了三層:
模型層: 由真實數據的表示組成,在數據庫中的表示主體上“建模”了它們的結構,從而組成了模型層。
視圖層: 由一些邏輯組成,這些邏輯定義了數據如何展現,他并不關心這些數據是什么,他只關心如何展現。該層不包括任何邏輯,只是將數據表現出來。
控制器: 定義了數據是什么,控制器是存放邏輯的地方,在Zend框架中,該層控制了要執行的行為。比如:如果我們想顯示單個的某條信息,那么職責就被解釋為:信息對象具有一個控制器,該控制器定義了當調用顯示行為時所發生的事情。該顯示行為回調以從模型(或者說是數據庫,又或者是其他的持久性數據容器)中獲取需要的數據,然后將這些字段(標題,內容之類),填入到視圖中,該視圖就將這些信息簡單的顯示到瀏覽器中。
使用Zend框架的編碼準則
當您為Zend框架編碼或者使用Zend框架進行開發時,應當遵循默寫編碼準則,這些編碼準則是為了使團隊開發變得簡單而設計的,這很重要,因為現階段的軟件開發大多是團隊協同工作的。
1 確保文件整潔,在文件頭,標準的四格縮進前不能有任何前導或后置的空格,這些空格會調用Web服務器導致以外的發送內容。
2 在類成為Zend框架的一部分時,類名以Zend_開頭,而不是在使用Zend框架時,類以Zend_開頭。
3 在函數名中下劃線是禁止的,而是以小寫字母開頭的,大小寫間隔的方式,如getTodayDate()
4 只有當變量是private或protected類型時,才以下劃線開頭
5 將所有的變量聲明為private protected或者public,而不要使用var
6 使用標準的php標記: <?php ?> 而不是<? ?>
7 確保您的代碼利于閱讀,在操作符前后,加入空格。
8 如果必須通過引用傳值,那只能在函數聲明時這樣做,調用時通過引用傳值是不允許的。
9 任何PHP文件都必須包括能被 PhpDocument 閱讀的文檔,并且編碼準則指定了特定的最少標記。