CI框架源码阅读,系统常量文件constants.php的配置


Posted in PHP onFebruary 28, 2013

配置系统常量
1、当文件系统工作的时候检查并配置这些首选项
文件系统运行的时候这些默认的值会适当的增加系统的安全性,但是在php或apache的底层单独的为每各用户开一个进程的时候,使用八进制的值永远是正确的
FILE_READ_MODE 读取文件的模式
FILE_WRITE_MODE   写入文件的模式
DIR_READ_MODE   读取目录的模式
DIR_WRITE_MODE 写入目录的模式

 
2、文件流模式
当我们使用fopen()/popen()的时候需要这些模式
define('FOPEN_READ', 'rb');
define('FOPEN_READ_WRITE', 'r+b');
define('FOPEN_WRITE_CREATE_DESTRUCTIVE', 'wb');
define('FOPEN_READ_WRITE_CREATE_DESTRUCTIVE',  'w+b');
define('FOPEN_WRITE_CREATE', 'ab');
define('FOPEN_READ_WRITE_CREATE', 'a+b');
define('FOPEN_WRITE_CREATE_STRICT', 'xb');
define('FOPEN_READ_WRITE_CREATE_STRICT',  'x+b');

文件源码:

[php]  
<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');  /* 
|-------------------------------------------------------------------------- 
| File and Directory Modes 
|-------------------------------------------------------------------------- 
| These prefs 控制台、首选项 are used when checking and setting modes when working 
| with the file system.  The defaults are fine 罚款 on servers with proper 
| security, but you may wish (or even need) to change the values in 
| certain environments (Apache running a separate process for each 
| user, PHP under CGI with Apache suEXEC, etc.).  Octal values should 
| always be used to set the mode correctly. 
*/  
define('FILE_READ_MODE', 0644);  
define('FILE_WRITE_MODE', 0666);  
define('DIR_READ_MODE', 0755);  
define('DIR_WRITE_MODE', 0777);  
/* 
|-------------------------------------------------------------------------- 
| File Stream Modes 文件流模式 
|-------------------------------------------------------------------------- 
| These modes are used when working with fopen()/popen() 
*/  
define('FOPEN_READ',                            'rb');  
define('FOPEN_READ_WRITE',                      'r+b');  
define('FOPEN_WRITE_CREATE_DESTRUCTIVE',        'wb'); // truncates existing file data, use with care  
define('FOPEN_READ_WRITE_CREATE_DESTRUCTIVE',   'w+b'); // truncates existing file data, use with care  
define('FOPEN_WRITE_CREATE',                    'ab');  
define('FOPEN_READ_WRITE_CREATE',               'a+b');  
define('FOPEN_WRITE_CREATE_STRICT',             'xb');  
define('FOPEN_READ_WRITE_CREATE_STRICT',        'x+b');  
  
/* End of file constants.php */  
/* Location: ./application/config/constants.php */ 
PHP 相关文章推荐
PHP内置过滤器FILTER使用实例
Jun 25 PHP
PHP之autoload运行机制实例分析
Aug 28 PHP
ThinkPHP表单自动验证实例
Oct 13 PHP
PHP魔术方法__GET、__SET使用实例
Nov 25 PHP
浅析php创建者模式
Nov 25 PHP
php+ajax实现的点击浏览量加1
Apr 16 PHP
php操作memcache缓存方法分享
Jun 03 PHP
谈谈PHP中substr和substring的正确用法及相关参数的介绍
Dec 16 PHP
Smarty环境配置与使用入门教程
May 11 PHP
php变量与JS变量实现不通过跳转直接交互的方法
Aug 25 PHP
swoole和websocket简单聊天室开发
Nov 18 PHP
PHP实现简单计算器小程序
Aug 28 PHP
PHP删除非空目录的函数代码小结
Feb 28 #PHP
PHP生成随机用户名和密码的实现代码
Feb 27 #PHP
PHP人民币金额数字转中文大写的函数代码
Feb 27 #PHP
PHP和.net中des加解密的实现方法
Feb 27 #PHP
php和js如何通过json互相传递数据相关问题探讨
Feb 26 #PHP
php数组的概述及分类与声明代码演示
Feb 26 #PHP
浅谈apache和nginx的rewrite的区别
Feb 22 #PHP
You might like
PHP+javascript模拟Matrix画面
2006/10/09 PHP
在PHP3中实现SESSION的功能(一)
2006/10/09 PHP
PHP6 mysql连接方式说明
2009/02/09 PHP
php共享内存段示例分享
2014/01/20 PHP
php无限遍历文件夹示例分享
2014/03/04 PHP
Json_encode防止汉字转义成unicode的方法
2016/02/25 PHP
PHP对象克隆clone用法示例
2016/09/28 PHP
Thinkphp5框架异常处理操作实例分析
2020/06/03 PHP
js 判断脚本加载完毕的代码
2011/07/13 Javascript
如何用ajax来创建一个XMLHttpRequest对象
2012/12/10 Javascript
在线一元二次方程计算器实例(方程计算器在线计算)
2013/12/22 Javascript
node.js下when.js 的异步编程实践
2014/12/03 Javascript
jquery实现滑屏大图定时收缩为小banner图片的广告代码
2015/09/02 Javascript
js使用cookie记录用户名的方法
2015/11/26 Javascript
node+experss实现爬取电影天堂爬虫
2016/11/20 Javascript
AngularJS自定义服务与fliter的混合使用
2016/11/24 Javascript
详解vue-router和vue-cli以及组件之间的传值
2017/07/04 Javascript
Javascript中绑定click事件的四种方式介绍
2018/10/26 Javascript
在vue和element-ui的table中实现分页复选功能
2019/12/04 Javascript
js Math数学简单使用操作示例
2020/03/13 Javascript
JavaScript TAB栏切换效果的示例
2020/11/05 Javascript
简单介绍Python中用于求最小值的min()方法
2015/05/15 Python
python 调用c语言函数的方法
2017/09/29 Python
浅谈python的dataframe与series的创建方法
2018/11/12 Python
Python 运行 shell 获取输出结果的实例
2019/01/07 Python
详解Django+uwsgi+Nginx上线最佳实战
2019/03/14 Python
解决tensorflow/keras时出现数组维度不匹配问题
2020/06/29 Python
Python数据库封装实现代码示例解析
2020/09/05 Python
皇家道尔顿官网:Royal Doulton
2017/12/06 全球购物
Static Nested Class 和 Inner Class的不同
2013/11/28 面试题
销售个人求职信范文
2014/04/28 职场文书
师德师风自查材料
2014/10/14 职场文书
php 获取音视频时长,PHP 利用getid3 获取音频文件时长等数据
2021/04/01 PHP
Matplotlib绘制混淆矩阵的实现
2021/05/27 Python
深入解析NumPy中的Broadcasting广播机制
2021/05/30 Python
spring项目中切面及AOP的使用方法
2021/06/26 Java/Android