|  | 
 
| 本帖最后由 imwebmaster.net 于 2012-5-12 17:34 编辑 
 CI版本:2.1.0
 准备:将CodeIgniter包 重命名为ci ,并放在环境根目录下 , /ci 。
 常量文件:/ci/application/config/constants.php
 
 在 Common.php 全局函数中,is_really_writable() 所用到的常量就在这里。
 
 
 PHP复制代码 复制代码 
define('FILE_READ_MODE', 0644);
define('FILE_WRITE_MODE', 0666);
define('DIR_READ_MODE', 0755);
define('DIR_WRITE_MODE', 0777);
 
 LINUX文件即目录权限系统
 没权限上传照片啊 晕啊 文件的权限是之于用户,用户所在组 ,其它用户的。假设文件 index.php  的权限为 644 。
 
 
 r = 4  w =2  x =1| 用户 | 用户所在组 | 其它用户 |  | 6 | 4 | 4 |  | rw- | r-- | r-- | 
 
 对于文件来说
 r   可以读取文件实际内容,比如文本文件的文字内容
 
 w  可以编辑 新增,修改文件内容 ,不包含删除文件哦
 
 x   该文件可被系统执行,在WINDOWS中,文件是否具备被执行能力,取决于它的扩展名 .exe .bat,但是在LINUX下
 是否可执行更扩展名没关系
 
 假设目录 cache 权限为 755
 
 
 | 用户 | 用户所在组 | 其它用户 |  | 7 | 5 | 5 |  | rwx | r-x | r-x | 
 对于目录来说:
 
 r     可以读取目录结构列表的权限,所以你可以LS 来查看 ,windows下是不是 dir?
 w
 可以创建文件和目录;
 删除已经存在的文件和目录
 重命名已存在的文件和目录
 移动目录下的文件和目录位置
 x
 目录总不会拿来被执行吧?目录的X权限代表用户能否进入该目录成为工作目录的权限。linux 下的cd命令。
 
 你是否还记得/ci/index.php 中的这段代码,如果该d目录dirname(__FILE__) 没有x权限的话,不能切换成功的哦
 
 
 要点:对一个文件是否有删除的权限 取决于对其所在目录是否有写的权限。
 
 用户管理以及文件权限是一个很大的话题,小弟的能力有限,只能做以上的阐述了。
 
 
 PHP复制代码 复制代码 
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基础
 FOPEN 打开文件的模式
 
 
 | 模式 | 可读? | 可写? | 文件指针 | 截断? | 创建? |  | r | Y | N | 开始 | N | N |  | r+ | Y | N | 开始 | N | N |  | w | N | Y | 开始 | Y | Y |  | w+ | Y | Y | 开始 | Y | Y |  | a | N | Y | 结尾 | N | Y |  | a+ | Y | Y | 结尾 | N | Y |  | x | N | Y | 开始 |  | Y |  | x+ | Y | Y | 开始 |  | Y | 
 r = read  , w = write ,    a = append ,  x  = ?  谁告诉我一下 是不是extend ?
 
 
 在非POSIX 系统中, 如WIN, 在打开二进制文件时,需要在模式中添加一个b = binary ,因此总是加个b,保证代码在Unix和Windows 中都能运行。(POSIX  = 可移植系统接口 FOR UNIX。)
 
 $fh = fopen('$filename', $mode)  模式作为FOPEN的第二个参数,决定了FOPEN的行为.
 
 
 | 
 评分
查看全部评分
 |