PHP之CI框架学习讲解

admin3年前PHP教程95
一、前言

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入门
手册地址:codeigniter.org/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、优秀入门博文推荐


cnblogs/lovele-/p/9434328
blog.csdn/qq_21806621/article/details/70992328
cnblogs/xiaoxiaoqingyi/p/6654190

到此这篇关于PHP之CI框架学习讲解的文章就介绍到这了,更多相关PHP之CI框架讲解内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

显卡服务器有什么用租用美国显卡服务器如何选择

显卡服务器实际上是配备独立显卡的物理服务器。用户可以通过远程桌面运行自己的程序和一些具有独立显卡需求的应用程序需求。为什么普通服务器没有显卡?由于许多服务器用于运行网站或作为应用程序的服务器,这些应用...

编程入门先学什么(如何学会编程写代码)

编程入门先学什么最近有许多关于学习编程的争辩。不仅仅是由于与软件开发公司公开的待应聘的职位数量相比较契合招聘要求的人远远无法满足缺口,编程也是工资最高和工作满足感最强的许多职业之一。也难怪越来越多的人...

江西gpu服务器租用费用跟哪些因素有关

GPU服务器租用费用是一个复杂的问题,因为它涉及到多个因素。下面是一些影响GPU服务器租用费用的因素:GPU型号不同的GPU型号具有不同的性能和价格。更高性能的GPU通常价格更高。例如,NVIDIAT...

高并发php uniqid不重复唯一标识符生成方案

PHP uniqid()函数可用于生成不重复的唯一标识符,该函数基于微秒级当前时间戳。在高并发或者间隔时长极短(如循环代码)的情况下,会出现大量重复数据。即使使用了第二个参数,也会重复,最好的方案是结...

如何正确选择高防IP呢?美国BGP高防物理机干嘛用的?

高防IP是什么?了解高防IP都可以给你防御一些什么东西?这一篇给你们深入科普以下高防IP到底是个什么东西?为什么高防IP理论上可以解决目前市面上所有的ddos攻击为什么高防IP对于ddos有效果?好了...

如何使用SublimeText3配置 PHP IDE环境

首先是安装好PHP之后配置环境变量然后在cmd中输入php -v 能看到版本号即为配置好了之后在sublime中新建编译系统,输入代码{"cmd": ["php"...