Yii技術框架學習之路(一)

2021-08-27 15:41:11 字數 1299 閱讀 8880

學習php的yii框架的權威指南

最近工作有用到別人寫好的bugfree問題管理系統,研究了一番,發現用到了yii框架,貌似要好好研究下yii框架,才能對bugfree系統進行修改,定製出自己的功能。

yii 使用了 web 開發中廣泛採用的模型-檢視-控制器(mvc)設計模式。 mvc的目標是將業務邏輯從使用者介面的考慮中分離,這樣開發者就可以更容易地改變每一部分而不會影響其他。 在 mvc中,模型代表資訊(資料)和業務規則;檢視包含了使用者介面元素,例如文字,表單等; 控制器則管理模型和檢視中的通訊。

除了 mvc, yii 還引入了乙個前端控制器,叫做 應用,它表示請求處理的執行上下文。 應用處理使用者的請求並將其分派到乙個合適的控制器以繼續處理。

下面的示意圖展示了 yii 應用的靜態結構:

下圖展示了乙個 yii 應用在處理使用者請求時典型的工作流。

使用者發出了訪問 url的請求, web 伺服器通過執行入口指令碼index.php處理此請求。

應用在乙個名叫urlmanager的應用元件的幫助下,決定請求的 控制器 和 動作 。在這個例子中,控制器是post,它代表postcontroller類; 動作是show,其實際含義由控制器決定。

應用建立了乙個所請求控制器的例項以進一步處理使用者請求。控制器決定了動作show指向控制器類中的乙個名為actionshow的方法。然後它建立並持行了與動作關聯的過濾器(例如訪問控制,基準測試)。 如果過濾器允許,動作將被執行。

動作從資料庫中讀取乙個 id 為1post模型。

動作通過post模型渲染乙個名為show的 檢視。

檢視讀取並顯示post模型的屬性。

檢視執行一些 小物件。

檢視的渲染結果被插入乙個 布局。

動作完成檢視渲染並將其呈現給使用者。

對2需要進一步闡釋:應用由 

入口指令碼

建立為乙個單例物件。這個應用單例物件可以在任何地方通過 

訪問。

個人分析認為3、7、9是比較讓人忽略的重點,具體包括request應用元件、乙個名為show的檢視、檢視執行了一些小物件。

當處理使用者請求時,應用將經歷如下宣告週期:

設定類的自動裝載器和錯誤處理;

註冊核心類元件;

載入應用配置;

處理使用者請求:

yii框架學習之路 yii典型處理流程

1.使用者訪問 伺服器執行入口指令碼index.php 來處理該請求。2.入口指令碼建立乙個應用例項並執行之。3.應用從乙個叫request 的應用元件獲得詳細的使用者請求資訊。4.在名為urlmanager 的應用元件的幫助下,應用確定使用者要請求的控制器和動作。5.應用建立乙個被請求的控制器例項...

yii框架學習(一)yii框架介紹

yii幾乎擁有了當今web2.0應用發展的全部特性。下面是這些特性的乙個簡短的清單。yii是乙個基於元件 用於開發大型web應用的高效能php框架。在web開發中yii可以最大限度的實現 重用,極大的提高開發的速度。名字yii 讀音是yee or ji 應該就是 易 的讀音 代表的是容易 easy ...

yii框架學習(六)yii框架相應處理

yii框架使用response類來修改statuscode,如下 res statuscode 404 複製 使用header類下的add方法既可以,如下是新增禁止瀏覽器快取配置資訊。res headers add pragma no cache 複製 使用set方法來修改 res headers ...