CI框架源码阅读---------Output.php
[php]<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* CodeIgniter
*
* An open source application development framework for PHP 5.1.6 or newer
*
* @package CodeIgniter
* @author ExpressionEngine Dev Team
* @copyright Copyright (c) 2008 - 2011, EllisLab, Inc.
* @license http://codeigniter.com/user_guide/license.html
* @link http://codeigniter.com
* @since Version 1.0
* @filesource
*/
// ------------------------------------------------------------------------
/**
* Output Class
*
* Responsible 负责 for sending final output to browser
* 负责把最终的输出发送到浏览器
* @package CodeIgniter
* @subpackage Libraries
* @category Output
* @author ExpressionEngine Dev Team
* @link http://codeigniter.com/user_guide/libraries/output.html
*/
class CI_Output {
/**
* Current output string
* 当前输出的字符串
*
* @var string
* @access protected
*/
protected $final_output;
/**
* Cache expiration time
* 缓存终结的时间
* @var int
* @access protected
*/
protected $cache_expiration = 0;
/**
* List of server headers
* 服务器头列表
* @var array
* @access protected
*/
protected $headers = array();
/**
* List of mime types
*
* @var array
* @access protected
*/
protected $mime_types = array();
/**
* Determines wether profiler is enabled
* 是否启用分析器
* @var book
* @access protected
*/
protected $enable_profiler = FALSE;
/**
* Determines if output compression is enabled
* 是否开启输出压缩
* @var bool
* @access protected
*/
protected $_zlib_oc = FALSE;
/**
* List of profiler sections
* 分析器列表
*
* @var array
* @access protected
*/
protected $_profiler_sections = array();
/**
* Whether or not to parse variables like {elapsed_time} and {memory_usage}
* 是否解析变量{elapsed_time} and {memory_usage}
* 注意文档说这里有错误详见http://codeigniter.org.cn/user_guide/libraries/output.html
* 最下方
* @var bool
* @access protected
*/
protected $parse_exec_vars = TRUE;
/**
* Constructor
*
*/
function __construct()
{
// 返回配置项zlib.output_compression的值并赋给$this->_zlib_oc
// 如果配置项中开启了输出压缩功能则 $this->_zlib_oc 的值为on
$this->_zlib_oc = @ini_get('zlib.output_compression');
// Get mime types for later
// 获取mimetype
if (defined('ENVIRONMENT') AND file_exists(APPPATH.'config/'.ENVIRONMENT.'/mimes.php'))
{
include APPPATH.'config/'.ENVIRONMENT.'/mimes.php';
}
else
{
include APPPATH.'config/mimes.php';
}
// $mimes 是mimes.php中定义的一个数组
$this->mime_types = $mimes;
log_message('debug', "Output Class Initialized");
}
// --------------------------------------------------------------------
/**
* Get Output
* 使用这个方法,你可以得到将要输出的数据,并把它保存起来
* Returns the current output string
* 返回当前输出的字符串
* @access public
* @return string
*/
function get_output()
{
return $this->final_output;
}
// --------------------------------------------------------------------
/**
* Set Output
*
* Sets the o
补充:Web开发 , php ,
- 更多php疑问解答:
- php使用imagick将image图片转化为字符串模式
- php通过gd实现图片图片转换为字符图代码
- PHP把图片转base64代码,php把base64代码转换为图片并保存
- PHP把图片base64转换成图片并保存成文件
- wordpress问题<?php if(have_posts()) : ?>
- 建设一个搜索类网站php还是jsp,数据库那个好
- 没理由啊 php代码无法执行,貌似有语法错误。。。
- 关于PHP 和API 的一段代码不懂啊不懂,请高手指点! 这是淘宝API的
- php语言中,序列化到底在那里使用?它的优势是什么?劣势是什么?
- PHP函数等于或等于应该怎么表达
- 请教php高手,解决basename函数和mb_substr函数处理中文文件名称的解决方法,在上传文件时,总是出现乱码
- .NET,PHP,JAVA,JS优秀点分别是?
- 织梦cms 在环境监测的时候 wamp5 gd不支持 是为什么。;extension=php_gd2.dll这一句我删除了还是不显示?
- 我想学PHP。1.应安装什么编程工具? 2. 装LIUNX系统是装简易的还是?什么版本的?3.还应安装什么?
- <?php 和 <? 有什么区别