CI框架 -- 核心文件 之 config.php】的更多相关文章

Config:该文件包含CI_Config类,这个类包含启用配置文件来管理的方法 /** * 加载配置文件 * * @param string $file 配置文件名 * @param bool $use_sections 配置值是否应该加载到自己的部分 * @param bool $fail_gracefully 是否只是返回假或显示一个错误信息 * @return bool 如果文件被正确地装载返回true:相反如果被错误地载入返回false */ public function load(…
钩子 - 扩展框架核心 CodeIgniter 的钩子特性提供了一种方法来修改框架的内部运作流程,而无需修改 核心文件.CodeIgniter 的运行遵循着一个特定的流程,你可以参考这个页面的 应用程序流程图 .但是,有些时候你可能希望在 执行流程中的某些阶段添加一些动作,例如在控制器加载之前或之后执行一段脚本, 或者在其他的某些位置触发你的脚本. 启用钩子 钩子特性可以在 application/config/config.php 文件中全局的启用或禁用, 设置下面这个参数: $config[…
使用CI框架,我们通常使用一下三个函数处理错误: show_error('消息' [, int $status_code = 500 ] ) show_404('页面' [, 'log_error']) log_message('级别', '消息'),有一下三种错误信息: 错误类型的消息. 这种是真正的错误消息. 例如PHP错误或者用户错误. 调试类型的消息. 这种是用来帮助调试的消息. 例如, 如果当一个类被初始化时,你可以将这个初始化纪录下来,然后用于调试. 信息类型的消息. 这种是最低优先…
顾名思义,装载器就是加载元素的,使用CI时,经常加载的有: 加载类库文件:$this->load->library()   加载视图文件:$this->load->view()   加载模型文件:$this->load->model()   加载数据库文件:$this->load->database()   加载帮助文件:$this->load->helper()   加载配置文件:$this->load->config()   加载…
system/core/Common.php 文件中可以定义 公共函数,我们可以在这里定义自己的公共函数.在任何情况下你都能够使用这些函数.使用他们不需要载入任何类库或辅助函数. 接下来分析下该文件中自带的一些方法: <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); // ---------------------------------------------------------------…
CI输出类Output.php的功能是将最终web页面发送给浏览器,这里面的东西可能是你用的最少的.你使用装载器加载了一个视图文件, 这个视图文件的内容会自动传递给输出类对象, 然后呢,在方法执行完毕后会自动调用输出类对象将执行的结果输出.值得注意的是这里面有评测器profiler和file cache的内容. http://codeigniter.org.cn/user_guide/libraries/output.html…
Benchmark.php文件中定义的CI_Benchmark类可以让你标记点,并计算它们之间的时间差.还可以显示内存消耗. Benchmarking类库,它是被系统自动被加载的,不需要手工加载 class CI_Benchmark { /** * List of all benchmark markers * * @var array */ public $marker = array(); /** * 标记时间点 */ public function mark($name) { $this-…
class CI_Model { /** * Class constructor * * @return void */ public function __construct() { log_message('info', 'Model Class Initialized'); } // -------------------------------------------------------------------- /** * __get magic * * Allows models…
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); class CI_Lang { var $language = array(); var $is_loaded = array(); function __construct() { log_message('debug', "Language Class Initialized"); } //加载语言包 function load…
class CI_Input { //用户ip地址 protected $ip_address = FALSE; //用户浏览器地址 protected $user_agent = FALSE; //允许get方式提交数据 protected $_allow_get_array = TRUE; //新行央视标记 protected $_standardize_newlines = TRUE; //xss攻击过滤 protected $_enable_xss = FALSE; //csrf攻击过滤…
Index.php作为CI框架的入口文件,源码分析,自然而然由此开始.在源码分析的过程中,我们并不会逐行进行解释,而只解释核心的功能和实现,如果英文水平很好的话,读过index.php文件的英文注释之后也就基本明白了inde.php都做了些什么.本来想第一篇写解析CI框架的目录结构的,像这一般网上一搜都是一大堆,也就放弃了这个想法.博主是基于CodeIgniter-v3.1.0最新版本进行解读分析.ok,书归正传,在博主看来CI框架的index.php文件一共完成了四项工作: ① 设置框架应用的…
@update 2016-4-2 13:45:35 一.目录结构 ci_demo ├─myapp 应用主目录 │ ├─autoload.php 自定义的自动加载文件(可选) │ ├─myapp.php应用入口文件,拷贝index.php得到,注意修改$application_folder = 'myapp'; │ ├─cache 缓存目录 │ ├─config 配置目录,包括autoload,database,routes等 │ ├─controllers 控制器目录,可以分为api和web部分…
这几天,把ci源码又看了一遍,于是有了新的收获.明白了在application目录下core文件夹的作用,就是用来写ci核心文件的扩展的, 而且需要在配置文件中添加类前缀MY_. CI框架整体是但入口文件,入口文件是Index.php在该文件中定义了一些系统变量,比如BASEPATH和 APPPATH等,最后加载ci框架的核心文件CodeIgniter文件,该文件位于system文件夹下的core文件夹下,此文件夹是ci的核心文件,包括了 controller,model,router,conf…
[军哥谈CI框架]之入门教程之第二讲:分析CI结构和CI是怎么工作的   之入门教程之第二讲:分析CI结构和CI是如何工作的大家好!上一节,我们共同部署了一个CI网站,做到这一点非常简单,但是,亲们,要知道这才刚刚开始额~~~ 这一节,我们主要来了解CI的文件结构和CI是如何工作的.这一点特别的重要! 一.CI的文件结构:了解CI的文件结构可以帮助我们快速的对CI框架有一个整体的认识,就好像我们去了一个陌生的城市一样,对你来讲周围的一切都是陌生和未知的,要想快速的了解这座城市,你可以买一张这座城…
CI目录结构   CI主要组成部分为,application(应用文件夹).system(系统文件夹)和index.php入口文件.     应用文件夹中主要是存放控制器.模型和视图等,系统文件夹中主要是存放组成CI的核心文件的,index.php入口文件是一个单一入口文件,所谓单一文 件是指在一个网站(应用程序)中,所有的请求都是指向的这么一个文件,由它负责接收并处理URL中的控制器和方法.换句话说, 它调用一个 '控制器', 然后返回一个'视图'.   application : cache…
一. CI框架的MVC导图 二. CI框架目录文件介绍 (1)index.php  单入口         整个框架对外暴露的唯一访问文件 (2)application  应用文件(放置用户信息,用户控制器.用户模板等) application/cache            --->   缓存 application/config            --->   配置文件 application/controllers        --->   控制器 application/…
1.可以按照Ci官方文件的指导来进行操作 让我们先创建一个简单的控制器,打开你的文本编辑器,新建一个文件并命名为 Tools.php,然后输入如下的代码: <?php class Tools extends CI_Controller { public function message($to = 'World') { echo "Hello {$to}!".PHP_EOL; } } 然后将文件保存到 application/controllers/ 目录下. 现在你可以通过类似…
调用一个视图 a.调用一个视图 $this->load->view('视图文件名'); b.调用多个视图 $this->load->view('index_h'); $this->load->view('index'); $this->load->view('index_f'); 将动态数据传入视图中 数据通过控制器以一个数组或者对象的形式传入视图,这个数组或者对象作为视图载入函数的第二个参数 控制器代码: $data=array('v_name'=>…
CI框架使用URL的前提是需要加载辅助函数$this->load->helper('url');当然我建议大家将所有需要加载的东西写在构造方法内,这样就不需每个控制器每个方法都去调用一次了. CI框架的URL跳转问题是一个不可忽视的问题,还记得刚开始接触CI框架时,跳转永远不对,无论是base_url还是site_url总是找不到正确的位置,下面先说下base_url和site_url的区别和使用的不同位置: base_url:书写方式base_url('index.php/Home/inde…
ci框架与smarty的整合 来源:未知    时间:2014-10-20 11:38   阅读数:108   作者:xbdadmin [导读] Ci 和 smarty 的完美结合 Ci 结合 smarty 的配置步骤: 1.第一步配置 ci 和下载 smarty 的模板个人喜欢用( Smarty-3.1.8)这个版本. 2.第二部把下载到的 smarty 版本解压然后把里面的 libs文件改名... Ci和smarty的完美结合 Ci结合smarty的配置步骤: 1. 第一步配置ci和下载sm…
ngnix 支持 CI框架1.修改config.php 参考网址:https://www.chenyudong.com/archives/codeigniter-in-nginx-and-url-rewrite.html 2. ci小样例 http://www.mamicode.com/info-detail-514033.html 控制器的默认配置文件: routes.php, 不修改默认为跳转到welcome控制器 3.修改CI为子目录 https://yq.aliyun.com/artic…
到了这里,终于进入CI框架的核心了.既然是“引导”文件,那么就是对用户的请求.参数等做相应的导向,让用户请求和数据流按照正确的线路各就各位.例如,用户的请求url: http://you.host.com/usr/reg 经过引导文件,实际上会交给Application中的UsrController控制器的reg方法去处理. 这之中,CodeIgniter.php做了哪些工作?我们一步步来看. 1.    导入预定义常量.框架环境初始化 之前的一篇博客(CI框架源码阅读笔记2 一切的入口 ind…
要想自定义view文件夹的位置,首先要了解CI框架时如何加载view文件夹的. CI中默认调用view的方法是: $this->load->view(); //这一行代码的原理是什么呢?请往下看: 我们打开application/core/Loader.php,里面有一个这样的方法: public function add_package_path($path, $view_cascade = TRUE) { $path = rtrim($path, '/').'/'; array_unshi…
在将html页面整合到ci框架里面的时候,载入css和js失败. 原因是ci框架是入口的框架 对框架中文件的全部请求都须要经过index.php处理完毕,当载入外部的css和js文件的时候要使 用base_url()函数处理外部的链接. 在控制器中须要先加载url相关的类 public function test() { $this->load->helper('url'); $this->load->view('admin/test'); } 在test.php的view视图中.…
当我重新接触一个框架的时候首先肯定要去掉入口文件,也就是index.php 这个东西在url上很不漂亮,而且每次我访问我的网站的时候都要打进去url里面.这样告诉一个去掉 CI框架里面入口文件的方法,其实也就是添加一个重定向操作.很多框架的操作的大同小异. 言归正转…. 1. LoadModule rewrite_module modules/mod_rewrite.so,把该行前的#去掉. 搜索 AllowOverride None(配置文件中有多处),看注释信息,将相关.htaccess的该…
我从网上找的文件php在线解压zip压缩文件 文件为jy.php可以直接执行,但是怎样将其加到CI框架中呢?? jy.php文件 <?php header("content-Type: text/html; charset=utf-8"); //验证密码 $password = "123456"; ?> <html> <head> <meta http-equiv="Content-Type" conte…
1.隐藏根目录下 index.php, 在根目录下创建 .htaccess文件 内容如下: <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L] </IfModule> 2.CI框架 将后台程序放在application下的a…
从sphinx下载的官方文件sphinxapi.php中类名为class SphinxClient 加入到CI框架,放在system/libraries/下,由于需要遵从CI框架libraries类名的命名规则,需要将class SphinxClient 改为class CI_Sphinxapi ,这时候需要注意的是官方的构造函数的名称是采用的和类名同名的方法,所以这里需要改构造函数改为更改后的类名或者__construct(),否则会出现比较多的问题,比如我碰到的这个socket连接问题:在构…
原文链接: https://blog.csdn.net/qq_38148394/article/details/87921373 此功能实现使用到PHPExcel类库,PHPExcel是一个PHP类库,用来帮助我们简单.高效实现从Excel读取Excel的数据和导出数据到Excel.也是我们日常开发中,经常会遇到的使用场景. (一) PHPExcel下载 类库下载地址:https://github.com/PHPOffice/PHPExcel (二) PHPExcel引入到CI框架 1) 解压压…
对CI框架中几个文件libraries,helpers,hooks夹说明 来源:未知    时间:2014-10-20 11:37   阅读数:117   作者:xbdadmin [导读] 1.library文件夹 如果你想扩展CI的功能,那么就把你的类库放在这,注意,这个文件夹是有class组成的,可以看看如果 加载library注意事项 ! 2.helper文件夹 如果你需要使用一些函数来帮你... 1.library文件夹 如果你想扩展CI的功能,那么就把你的类库放在这,注意,这个文件夹是…