ci框架使用的是mvc,m是模型,主要存放和資料庫相關的操作,比如向資料庫寫資料,從資料庫中讀取資料。v是檢視,前端的檔案都這裡,是使用者可以看到的,可以顯示出來的東西。c是控制器,是整個框架比較核心的一部分,主要是連線模型和檢視,將模型操作的資料給檢視所使用,大部分的**都在c中。
下面是mvc在ci中的位置,注意:前端在views中的**也要使用.php字尾名。
以建立乙個簡單新聞系統為例,來熟悉ci框架的基本操作。
<?php
class pages extends ci_controller
}
這段**的意思是,在controllers中建立了乙個 pages 類,並繼承(extends表示繼承,在controllers中的類必須繼承 ci_controller 類),有乙個方法(實際上就是函式)view 並可接受乙個 $page 引數。
現在,你已經建立了你的第乙個方法,是時候建立一些基本的頁面模板了,我們將 新建兩個檢視(頁面模板)分別作為我們的頁尾和頁頭。
上面這段**可以看出,php是可以寫在html裡的,用<?php ...?>括住.
echo $title;
這句話的意思是顯示從後端得到的$title,後面將從控制器中傳送$title。
這樣,乙個簡單的前端介面就設計好了,下一步是在控制器中新增邏輯。
在該目錄中,再新建兩個檔案 home.php 和 about.php ,在每個檔案裡隨便 寫點東西然後儲存它們。
為了載入這些頁面,你需要先檢查下請求的頁面是否存在:
public function view($page = 'home')
$data['title'] = ucfirst($page);
$this->load->view('templates/header', $data);
$this->load->view('pages/'.$page, $data);
$this->load->view('templates/footer', $data);
}
if判斷請求的頁面是否存在,當請求的頁面存在時,將包括頁面和頁尾一起被載入並顯示給使用者,如果不存在, 會顯示乙個 "404 page not found" 錯誤。file_exists() 是個原生的 php 函式,用於檢查某個 檔案是否存在,show_404() 是個 codeigniter 內建的函式,用來顯示乙個預設的 錯誤頁面。
在頁標頭檔案中,$title 變數用來自定義頁面的標題,它是在這個方法中賦值的, 但是注意的是並不是直接賦值給 title 變數,而是賦值給乙個 $data 陣列的 title 元素。(注意,ci中向前端傳資料一般是將資料整合成乙個陣列,陣列的下標是變數名,在前端介面直接使用變數名,所以控制器中 $data['title'] 的值,就等於檢視中的 $title 的值。)
最後要做的是按順序載入所需的檢視,view() 方法的第二個引數用於向檢視傳遞引數, $data 陣列中的每一項將被賦值給乙個變數,這個變數的名字就是陣列的鍵值。
$this->load->view('pages/'.$page, $data);
中 ,表示顯示pages/$page介面,」.「 的作用是連線網域名稱。
控制器現在開始工作了!在你的瀏覽器中輸入 [your-site-url]index.php/pages/view 來檢視你的頁面。
在本地訪問本地頁面時,url的輸入方法大致是
localhost/[你的檔案位址從www直到index.php]/index.php/[類名]/[方法名及需要的引數]
例如
,要顯示之前做得靜態介面,則url為http://localhost/news/index.php/pages/view
如果希望顯示about.php,則url為http://localhost/news/index.php/pages/view/about
顯示結果為
ci在url上不區分大小寫,但如果出現404的情況,需要多嘗試,檢查大小寫是否符合要求,檔案路徑是否正確,路徑是否有中文等問題。
CI框架 1 流程基本熟悉
ci框架是php的乙個快速開發框架,我已經用ci框架開發了一些專案了。想回頭做做總結,以供大家學習。這篇文章先具體介紹ci框架吧我用的是ci2.0框架。4我們知道要執行php,需要apache執行才可以解析執行。apache是乙個web伺服器軟體。自己去裝apache軟體很麻煩,所以可以使用乙個整合...
NodeJs開篇手冊1
除錯準備 1.首先在命令列執行npm以全域性模式安裝node inspector外掛程式 npm install g node inspector 2.然後用node命令執行需要除錯的指令碼,但是要加上 debug brk引數,例如 node debug brk 5858 test.js 3.重啟乙...
CI框架分頁類的使用 1
首先,要查詢資料庫,確定一共有多少條資料 this load model test model user this test model user select all pageall count user 總條數 pagenum 20 每頁顯示的條數 其次,進行config的配置 config t...