程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> cakephp筆記——view層

cakephp筆記——view層

編輯:關於PHP編程

一個view是一個頁面模版,通常按action的名字命名。例如,PostsController::add的view位於/app/views/posts/add.ctp。Cake view是非常簡單的PHP文件,因此你可以在其中使用任何PHP代碼。       Layouts 布局   一個layout(布局)包含了所有包裹在view之外的表現代碼。Layout文件都放在/app/views/layouts目錄裡。你可以重寫一個默認的layout來取代位於/app/views/layouts/default.ctp的Cake默認layout。一但創建了新的默認layout,當頁面render的時候controller view的內容會被替換到默認layout中。只要需要,你可以隨意為你的Cake站點創建任意數量的layout,只要把他們放在app/views/layouts目錄,並且在你的controller action裡邊使用controller的$layout變量或者setLayout()方法來切換layout。       Elements 元素     element元素的產生主要是為了代碼或者是代碼塊的重用。許多應用程序都會有一些在各個頁面見不停重復的表現層代碼,有時他們只是在layout裡的不同地方。Cake可以幫助你復制站點中的某些區塊,如果需要的話。 我們將這些可重用的頁面區塊稱為Element(元素)。廣告,幫助框,導航欄,菜單和插圖都被Cake實現成為element。一個element其實可以看作是可以包含在其他view裡邊的mini-view。所有element都生活在/app/views/elements目錄下,並且文件擴展名為.ctp。   默認情況下,element訪問不到任何數據。想讓它具有對數據的訪問權,你需要將數據放在數組裡傳遞給它,並不要忘了為這些數據帶上名字(鍵-值對數組)。   無參數地調用一個element   <?php echo $this->renderElement('helpbox'); ?>   調用一個element,並傳入包含數據的數組   <?php echo   $this->renderElement('helpbox', array( "helptext" => "Oh, this text is very helpful.") );    ?>   在element文件裡,所有傳入的變量都可以通過他們在參數數組裡的鍵名來使用(有點類似於在view裡邊使用controller用set()設置的變量)。在上邊這個例子中,/app/views/elements/helpbox.ctp文件可以使用$helptext變量。當然,如果傳遞一個數組給element會包含更多的信息。element使view具有更佳的可讀性,而把render重復的element的部分放在對應的element文件中。當然它們也可以幫助你重用站點中的內容區塊。  

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved