PHP之CI框架学习讲解

 更新时间:2021-09-22 21:53:25   作者:佚名   我要评论(0)

一、前言
CodeIgniter 是一个简单快速的PHP MVC框架。EllisLab 的工作人员发布了 CodeIgniter。CodeIgniter 是一套小巧但功能强大的、给 PHP

一、前言

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框架讲解内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
  • php框架CI(codeigniter)自动加载与自主创建对象操作实例分析
  • 关于PHP5.6+版本“No input file specified”问题的解决
  • php过滤htmlspecialchars() 函数实现把预定义的字符转换为 HTML 实体用法分析
  • 为Plesk PHP7启用Oracle OCI8扩展方法总结
  • nginx+php出现No input file specified解决办法
  • PHP htmlspecialchars()函数用法与实例讲解
  • PHP htmlspecialchars_decode()函数用法讲解
  • PHP htmlspecialchars() 函数实例代码及用法大全

相关文章

  • PHP之CI框架学习讲解

    PHP之CI框架学习讲解

    一、前言 CodeIgniter 是一个简单快速的PHP MVC框架。EllisLab 的工作人员发布了 CodeIgniter。CodeIgniter 是一套小巧但功能强大的、给 PHP
    2021-09-22
  • Elasticsearch属性单词常用解析说明

    Elasticsearch属性单词常用解析说明

    一、前言       说实话,刚测试ES的时候,我的内心是崩溃的,好多单词都不知道代表什么意思,只能一边测试,
    2021-09-22
  • PHP 修改SESSION的生存时间案例详解

    PHP 修改SESSION的生存时间案例详解

    需求背景: 用户希望他登录之后,浏览器就帮他记住登录状态,这样他就不用每次进入的时候,都需要登录一次。 session过期时间: 如果我们没有
    2021-09-22
  • HTTP中header头部信息详解

    HTTP中header头部信息详解

    HTTP Request的Header信息 1、HTTP请求方式 如下表: GET 向Web服务器请求一个文件
    2021-09-22
  • laravel多视图共享数据实例代码

    laravel多视图共享数据实例代码

    目录前言在视图间共享数据 视图Composer 添加 Composer 到多个视图 总结前言 在做项目中,网站前台或者后台有些数据需要在多个视图页面使
    2021-09-22
  • php fopen()函数案例详解

    php fopen()函数案例详解

    定义和用法 fopen() 函数打开文件或者 URL。 如果打开失败,本函数返回 FALSE。 语法 fopen(filename,mode,include_path,context)
    2021-09-22
  • php floor()函数案例详解

    php floor()函数案例详解

    floor() 函数向下舍入为最接近的整数。 语法 floor(x) 参数 描述 x
    2021-09-22
  • 图文详解laravel多对多关联模型

    图文详解laravel多对多关联模型

    关联模型(多对多) 多对多关系(抽象) 例:一篇文章可能有多个关键词,一个关键词可能被多个文章使用。 关键词表:
    2021-09-22
  • php比较两个指定的日期的实例讲解

    php比较两个指定的日期的实例讲解

    1、给定的日期格式相同,则使用简单的比较运算符来比较日期。 <&#63;php //声明两个日期、初始化 $date1 = "2021-11-24"; $date2 = "2001-
    2021-09-22
  • php有序列表或数组中删除指定的值的实现代码

    php有序列表或数组中删除指定的值的实现代码

    实现:删除给定的值之后,得到一个新的有序列表,长度-1 代码: <&#63;php /** * Created by PhpStorm. * User: wkk * Time: 2021/7/11
    2021-09-22

最新评论