CI框架浅析(二)
该文延续上篇文章: CI框架浅析(一)
在CI框架的核心库中,CodeIgniter.php负责加载所有需要的类库,第一个加载的是公共库 core/Common.php
Common.php 负责加载以下公共方法:
方法名
|
注释 |
is_php($version)
|
判断$version是否小于或等于当前安装的PHP版本
|
is_really_writable($file)
|
判断该文件是否可写
|
load_class($class, $directory = 'libraries', $param = NULL)
|
加载类,但只能加载前缀为CI 的类,或前缀为自己配置的 $config['subclass_prefix'
|
is_loaded
|
返回已经加载类的数组
|
get_config(Array $replace = array())
|
加载 application/config/config.php 配置数组
application/config/ENVIRONMENT/config.php ENVIRONMENT为你开发的环境
|
config_item($item)
|
获取配置项的具体一项值
|
get_mimes()
|
获取config/mimes.php 的元数据数组
|
is_https()
|
判断是否是 https 加密协议
|
is_cli()
|
判断是否是在命令行执行
|
show_error()
|
加载 Exception,在自己的模板输出错误,然后exit
|
show_404($page = '', $log_error = TRUE)
|
加载 Exception,在自己的模板输出404错误
|
log_message($level, $message)
|
输出日志信息(不要把config.php 的log_threshold变量设 置为 4,太卡了,消耗太多的性能)
|
set_status_header($code = 200, $text = '')
|
设置http回应状态头
|
_error_handler( )
|
错误处理,加载Exceptions类,然后用日志输出错误,如果是验证的错误,则exit(1)退出程序。
|
_exception_handler($exception)
|
异常处理,加载Exceptions类,记录异常,然后 exit(1)退出。
|
_shutdown_handler()
|
宕机处理,不同的错误级别做相应的处理,调用_error_handler 方法处理
|
remove_invisible_characters()
|
移除不可见的字符
|
html_escape($var, $double_encode = TRUE)
|
html 转义
|
_stringify_attributes($attributes, $js = FALSE)
|
将数组等其它类型,转换成字符串类型。
|
function_usable($function_name)
|
方法可用,该方法只是暂时的,后期可能会移除。这方法需要加载Suhosin (一个PHP的补丁或拓展)
|
Common.php中也调用了 Exceptions.php :
方法名 | 注释 |
log_exception($severity, $message, $filepath, $line)
|
记录异常信息,保存在日志里
|
show_404($page = '', $log_error = TRUE)
|
记录错误的日志,且调用show_error()输出错误页面
|
show_error($heading, $message, $template = 'error_general', $status_code = 500)
|
找到对应的模板,然后输出错误的html页面
|
show_exception($exception)
|
输出异常的html页面
|
show_php_error($severity, $message, $filepath, $line)
|
本地PHP出错处理,输出相应的错误页面。
|
if (file_exists(APPPATH.'config/'.ENVIRONMENT.'/constants.php'))
{
require_once(APPPATH.'config/'.ENVIRONMENT.'/constants.php');
}
从代码可以知道:
CI框架浅析(二)的更多相关文章
- CI框架浅析
CI框架浅析(全篇) 业余花了点时间看看CodeIgniter框架(简称CI),CI目前的稳定版本是 3.X,4.0版本已经出来了,但还在测试中,所以我分析的还是 3.x 版本. CI是一个很 ...
- CI框架浅析(全篇)
业余花了点时间看看CodeIgniter框架(简称CI),CI目前的稳定版本是 3.X,4.0版本已经出来了,但还在测试中,所以我分析的还是 3.x 版本. CI是一个很轻便的框架,整个下载包 ...
- CI框架浅析(一)
CodeIgniter 是一个小巧但功能强大的 PHP 框架,作为一个简单而“优雅”的工具包,它可以为开发者们建立功能完善的 Web 应用程序.本人使用CI框架有一段时间了,现在决定把 ...
- ci框架(二)
自定义SQL语句 当提供的API满足不了我们对S ...
- 初学后台框架总结篇二——快速了解CI框架
一.下载CI框架并安装,这里放置一张自己的项目目录结构图 目录框架搭建好之后开始将自己的项目与框架融合 二.更改相关配置 1.用任何文本编辑器打开 application/config/config. ...
- 二十七、CI框架之自己写分页类并加载(写分页还是有难度,搞了一整天)
一.我们写好自己的分页代码,防止library目录中,带构造函数 二.在模型中,添加2个函数,一个是查询数据的条数,第二个是取出数据库中的数据 三.在控制中,写入相应的代码,如下: 四.在界面中,写入 ...
- PHP CI 框架简单使用(二)
我们简单认识一下CI框架的MVC.示例代码如下 //CI控制器文件Home.php <?php defined('BASEPATH') OR exit('No direct script acc ...
- 第一天ci框架开发商城1
ci框架开发商城1 1/28/2016 9:43:52 PM userguide删除 system application controllers 控制器 models 模型 views 视图 模板 ...
- CI框架,源代码一次性判断获取post(get)数据是否有某个字段值为空方法
一.以下是CI框架 1.把所有的要接收的字段放在数组中 例: 我要接收:id,name,age,mobile 等字段 $req = array('id','name','age','mobile'); ...
随机推荐
- java中 i = i++ 的结果
昨天看到下面这段代码,分享出来给大家看看,大家也可以讨论讨论. int i = 0; i = i++; System.out.println("i的值是 "+i); 根据我们通常所 ...
- 【JSON学习之道】js操作JSON
JSON (JavaScript Object Notation)一种简单的数据格式,比xml更轻巧. JSON 是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON ...
- js实现浏览器添加收藏功能
今天搞项目的时候为了实现浏览者实现添加收藏的功能,特地了解了一下相关的API. 也看到了网上各种版本的代码.整理了一下,代码如下.简单易懂. <script> function _addF ...
- Web平台安装及检测程序
软件名称:microsoft web platform installer 上图: 可以看做是一个App Store, 你再也不用东奔西跑去找什么开发软件,CMS等等了,直接打开这个,勾选上就安装吧, ...
- 2751: [HAOI2012]容易题(easy)
2751: [HAOI2012]容易题(easy) Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 1087 Solved: 477[Submit][ ...
- 【SSH项目实战三】脚本密钥的批量分发与执行
[SSH项目实战]脚本密钥的批量分发与执行 标签(空格分隔): Linux服务搭建-陈思齐 ---本教学笔记是本人学习和工作生涯中的摘记整理而成,此为初稿(尚有诸多不完善之处),为原创作品,允许转载, ...
- SSH登录与增删改查demo详解+源代码
点击下载,测试绝对可用SSH整合框架登录加增删改查demo 下载地址:http://download.csdn.net/detail/qq_33599520/9784679 一.框架概述 spri ...
- HTML5学习笔记<五>: HTML表单和PHP环境搭建
HTML表单 1. 表单用于不同类型的用户输入 2. 常用的表单标签: 标签 说明 <form> 表单 <input> 输入域 <textarea> 文本域 < ...
- mac下安装 resin 奇葩问题总结
mac 下安装 resin(需要确认电脑配置好了 java 环境变量): 第一步:去 resin 的官网下载最新的压缩包,官网连接:http://caucho.com/products/resin/d ...
- 深入浅出数据结构C语言版(1)——什么是数据结构及算法
在很多数据结构相关的书籍,尤其是中文书籍中,常常把数据结构与算法"混合"起来讲,导致很多人初学时对于"数据结构"这个词的意思把握不准,从而降低了学习兴趣和学习信 ...