目录 搜索
欢迎 目录 快速参考图 基本信息 服务器要求 许可协议 变更记录 关于CodeIgniter 安装 下载 CodeIgniter 安装指导 从老版本升级 疑难解答 介绍 开始 CodeIgniter 是什么? CodeIgniter 速记表 支持特性 应用程序流程图 模型-视图-控制器 架构目标 教程 内容提要 加载静态内容 创建新闻条目 读取新闻条目 结束语 常规主题 CodeIgniter URL 控制器 保留字 视图 模型 辅助函数 使用 CodeIgniter 类库 创建你自己的类库 使用 CodeIgniter 适配器 创建适配器 创建核心系统类 钩子 - 扩展框架的核心 自动装载资源 公共函数 URI 路由 错误处理 缓存 调试应用程序 以CLI方式运行 管理应用程序 处理多环境 PHP替代语法 安全 开发规范 类库参考 基准测试类 日历类 购物车类 配置类 Email 类 加密类 文件上传类 表单验证详解 FTP 类 图像处理类 输入类 Javascript 类 语言类 装载类 迁移类 输出类 分页类 模板解析器类 安全类 Session 类 HTML 表格类 引用通告类 排版类 单元测试类 URI 类 User-Agent 类 表单验证 XML-RPC 和 XML-RPC 服务器 Zip 编码类 缓存适配器 适配器参考 适配器 数据库类 Active Record 类 数据库缓存类 自定义函数调用 数据库配置 连接你的数据库 数据库快速入门例子代码 字段数据 数据库维护类 查询辅助函数 数据库类 查询 生成查询记录集 表数据 事务 数据库工具类 JavaScript类 辅助函数参考 数组辅助函数 CAPTCHA 辅助函数 Cookie Helper 日期辅助函数 目录辅助函数 下载辅助函数 Email 辅助函数 文件辅助函数 表单辅助函数 HTML辅助函数 Inflector 辅助函数 语言辅助函数 数字辅助函数 路径辅助函数 安全辅助函数 表情辅助函数 字符串辅助函数 文本辅助函数 排版辅助函数 URL 辅助函数 XML 辅助函数
文字

CodeIgniter 用户指南 版本 2.1.0

编辑文档、查看近期更改请 登录 或 注册  找回密码
查看原文

文件辅助函数

文件辅助函数文件包含若干对文件进行操作的函数。

加载

使用以下代码:

$this->load->helper('file');

加载后可用以下函数:

read_file('path')

返回路径为path的文件内容。例:

$string = read_file('./path/to/file.php');

可以是相对或者绝对的服务器的路径。如果函数执行失败则返回 FALSE(boolean类型)。

提示: 这里的路径是相对于该站点的index.php所在的路径,而不是当前所在的控制器或视图文件的路径。这是因为CodeIgniter使用的前端控制器(front controller)所以,所有的路径永远都是相对于index.php所在路径。

如果你的服务器打开了 open_basedir 限制,你可能无法通过上面的方法访问一个文件。

write_file('path', $data)

写进数据到path所指向文件。如果文件不存在则创建之。例:

$data = 'Some file data';

if ( ! write_file('./path/to/file.php', $data))
{
     echo 'Unable to write the file';
}
else
{
     echo 'File written!';
}

你可以通过可选的第三个参数来设置文件的读写属性:

write_file('./path/to/file.php', $data, 'r+');

默认读写属性是 wb。更多关于文件读写属性参数的内容请参考:PHP user guide。

注意:要使用此函数写进数据,当前用户对此文件应该是“可写”的,如果该文件不存在则该用户应该对包含该文件的目录有写权限。(即*nux系统下的666,777等)。

提示: 这里的路径是相对于该站点的index.php所在的路径,而不是当前所在的控制器或视图文件的路径。这是因为CodeIgniter使用的前端控制器(front controller)所以,所有的路径永远都是相对于index.php所在路径。

delete_files('path')

删除所有包含于path下的文件。例:

delete_files('./path/to/directory/');

如果第二个参数设为 true, 则所有在path下的文件夹也会被删除掉。例:

delete_files('./path/to/directory/', TRUE);

提示: 要被删除的文件必须是当前系统用户所有或者是当前用户对之具有写权限。

get_filenames('path/to/directory/')

获取path/to/directory目录下所有文件名组成的数组。如果需要文件名中有其完整路径则可以设置可选的第二个参数为TRUE。

get_dir_file_info('path/to/directory/', $top_level_only = TRUE)

获取path/to/directory/目录下的所有文件的文件名,文件大小,日期,文件权限等,并将这些内容保存到返回的数组当中。Sub-folders contained within the specified path are only read if forced by sending the second parameter, $top_level_only to FALSE, as this can be an intensive operation.

get_file_info('path/to/file', $file_information)

通过给定的路径和文件名,获取到文件path/to/file的文件名,文件大小,文件更改日期等。第二个参数允许你说明需要返回的信息,这个参数的选项包括'name', 'server_path', 'size', 'date', 'readable', 'writable', 'executable', 'fileperms'。如果文件不存在则返回FALSE。

注意: 参数 "writable" 是使用PHP内部的 is_writable() 函数来得到文件读写权限信息的,而这个函数在IIS服务器上存在众所周知的问题。为此,可以考虑使用PHP内部的另一个函数来替换,这个函数就是fileperms()。

get_mime_by_extension('file')

将文件后缀所代表的文件类型按照config/mimes.php里所指明的对应类型进行解释。如果不能决定文件类型,或者不能打开mime配置文件则返回 FALSE。

$file = "somefile.png";
echo $file . ' is has a mime type of ' . get_mime_by_extension($file);

注意: 这并不是一个准确判断文件类型的方式,而仅仅是一种方便的判别方式。不应当在涉及安全问题时使用这种方式。

symbolic_permissions($perms)

将数字式的权限表示方式(如fileperms()函数所返回值)转换成采用标准符号的标示方式,例如:"33279"转换成"-rwxrwxrwx")。

echo symbolic_permissions(fileperms('./index.php'));

// -rw-r--r--

octal_permissions($perms)

将数字式的权限表示方式(如fileperms()函数所返回值)转换成采用三字符的八进制的标示方式,例如:"33279"转换成"777")。

echo octal_permissions(fileperms('./index.php'));

// 644

 

翻译贡献者: Hex, iptton, pipi95, szlinz
最后修改: 2011-02-01 00:18:20
上一篇: 下一篇: