目录搜索
欢迎目录快速参考图基本信息服务器要求许可协议变更记录关于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
上一篇:下一篇: