codeigniter學習1

緩緩先生發表於2019-02-16

CI框架學習篇(1)

關於CI

  • 特點:輕量(2.2M)、快速(用到哪些進行手動的載入)、功能強大

  • 基於MVC模型

  • 能夠生成乾淨的URL,便於SEO優化

  • 擴充套件性強

  • 不需要模板引擎(寫原生速度更快、不需要重新編譯模板)

MVC框架

模型:提供增、刪、改查資料庫這些功能
檢視:負責給使用者展示頁面功能
控制器:連線檢視和模型,是模型和檢視以及其他處理的中介

URL片段

CI是訪問單入口來執行的其中的功能 訪問index.php來操作controller

index.php/home/index home/index就是URL片段 類名/方法 index是預設的方法

localhost/ci/index.php/home 會直接索引到home下的index方法

CI的一些操作

  1. 配置預設控制器

  2. 載入檢視檔案 $this->load->view(`file_name`) php檔案不需要寫字尾,其他檔案需要字尾名

  3. 給檢視傳遞資料

$data[`title`] = `標題`;
$this->load->view(`file_name1`,$data);
$this->load->view(`file_name2`);
//file_name2可以使用$data的資料,其他檢視使用也只需要載入一次
  1. 載入輔助函式

  • 手動載入

//常用url輔助函式,將其放在自動載入中
$this->load->helper(`url`);//url輔助函式
echo site_url();//訪問控制器方法名來刪除
echo `<hr/>`;
echo base_url();//一些css的路徑等
redirect(`類名/方法名`);//直接跳轉
  • 自動全域性載入

//application-config-autoload.php
$autoload[`helper`] = array(`url`);
  1. 自定義函式

//system-core-Common.php自動載入、全域性使用
function p($arr){
    echo `<pre>`;
    print_r($arr);
    echo `</pre>`;
}
  1. 表單驗證類

  • 載入驗證類

$this->load->library(`form_validation`);
  • 設定規則

$this->form_validation->set_rules(`name值`,`標籤名稱`,`規則`);
  • 執行驗證(返回bool值)

$this->form_validation->run()
  • 表單驗證輔助函式

$this->load->helper(`form`);
set_value(`name`)//充填資料
form_error(`name`,`<span>`,`</span>`)//顯示錯誤
set_select()
set_checkbox()
set_radio()