PHP之CI框架學習講解

一、前言

CodeIgniter 是一個簡單快速的PHP MVC框架。EllisLab 的工作人員發佈瞭 CodeIgniter。CodeIgniter 是一套小巧但功能強大的、給 PHP 網站開發者使用的 Web 應用程序開發框架和工具包。它為組織提供瞭足夠的自由支持,允許開發人員更迅速地工作。

二、CI的工作流程

  • 1.index.php作為前端控制器,初始化運行CodeIgniter所需要的基本資源。   
  • 2.Router檢查HTTP請求,以確定誰來處理請求。   
  • 3.如果緩存(Cache)文件存在,它將繞過通常的系統執行順序,被直接發送給瀏覽器。   
  • 4.安全(Security)。應用程序控制器(ApplicationController)裝載之前,HTTP請求和任何用戶提交的數據將被過濾。   
  • 5.控制器(Controller)裝載模型、核心庫、插件、輔助函數,以及任何處理特定請求所需的其它資源。   
  • 6.最終視圖(View)渲染發送到Web瀏覽器中的內容。如果開啟緩存(Caching),視圖首先被緩存,所以將可用於以後的請求。

三、CI入門

手冊地址:http://codeigniter.org.cn/user_guide/

1、查看ci框架的版本號

項目中全局搜索:CI_VERSION
define('CI_VERSION', '2.x');

2、 CI框架設置默認的控制器

1.進入application的config文件夾下,找到routes.php
2.看到設置:$route['default_controller'] = "test";  // 含義是默認訪問test控制器的index方法

3、核心類庫的調用方式(system/core/config.php)

(1)控制器中調用核心庫
$aa = $this->config->base_url();

(2)控制器中調用邏輯文件
$this->load->biz('test/test1'); // test1.php就是邏輯文件名

4、系統類庫的調用(system/libraries/config.php)

$this->load->library('class_name'); //調用單個文件
$this->load->library(array('email', 'table')); //調用多個文件
$this->class_name->error_array();  //調用結束之後,就可以直接使用系統類庫中的方法

5、輔助函數類的調用 (system/helps/test.php)

$this->load->library('test');
$casUserInfo = $this->test->xxx(); // 調用完可直接使用

6、模型類的調用 (system/models/model_name.php)

$this->load->model('blog/model_name'); 引用位於子目錄下模型
$this->model_name->method(); 加載之後,你就可以通過一個和你的類同名的對象訪問模型中的方法。

7、渲染頁面

$this->load->view($template, $data, TRUE);

8、其他調用(redis)

//需要在config文件夾新建redis.php文件,裡面寫上配置等
$this->load->redis('key的名字'); //redis

9、獲取和設置config的值

echo $this->config->item('charset'); //獲取config中配置的charset值
$this->config->set_item('charset', 'gbk') //重新設置config中charset的值

10、以上方法皆為在controller中的調用,如果不在controller中怎麼辦?

要你自定義的類庫中訪問CodeIgniter的原始資源,你必須使用 get_instance() 函數.這個函數返回一個CodeIgniter super object.
$CI = &get_instance();
$CI->load->config('test1'); //加載core下的配置文件,例如test1.php
$CI->load->model('xxx/test_db'); //  加載model下的文件
$CI->load->library('http');  //加載 library下的文件
$CI->load->redis('test');  // 調用redis
$CI->load->rabbitmq('test'); // 調用rabbitmq
$CI->load->view($template, $data, TRUE);  // 渲染頁面

11、ci的命令行調用

調用方式:php index.php 控制器 方法 參數
示例:

*/1 * * * * php 項目目錄/index.php test test_1 0 > /dev/null 2>&1

解釋:

(1)類似於其他框架的命令行模式,前面是php位置,後面是項目根目錄的index,php
 (2) 後面的是用空格隔開的,控制器文件名(application裡面的),方法名,參數
(3)方法示例:
// 這個就是對應的方法,$index是參數
public function test_1($index = 0)
    {}

12、優秀入門博文推薦

https://www.cnblogs.com/lovele-/p/9434328.html
https://blog.csdn.net/qq_21806621/article/details/70992328
https://www.cnblogs.com/xiaoxiaoqingyi/p/6654190.html

到此這篇關於PHP之CI框架學習講解的文章就介紹到這瞭,更多相關PHP之CI框架講解內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: