Board logo

标题: PHP中读文件 [打印本页]

作者: fangzhen    时间: 2008-12-15 21:03     标题: PHP中读文件

首先是一个文件看能不能读取(权限问题),或者存在不,我们可以用is_readable函数获取信息.: 以下为引用的内容: 判断文件存在的函数还有file_exists(下面演示),但是这个显然无is_readable全面.,当一个文件存在的话可以用 以下为引用的内容: 但是file_get_contents函数在较低版本上不支持,可以先创建文件的一个句柄,然后用指针读取全部: 以下为引用的内容: fso = fopen(cacheFile, 'r'); data = fread(fso, filesize(cacheFile)); fclose(fso); 还有一种方式,可以读取二进制的文件: data = implode('', file(file));
作者: fangzhen    时间: 2008-12-15 21:17

PHP中有一个文件操作函数fopen,即打开文件。若文件不存在,则尝试创建。这即是PHP可以用来创建HTML文件的理论基础。只要用来存放HTML文件的文件夹有写权限(即权限定义0777),即可创建文件。 fopen (PHP 3, PHP 4 ) fopen -- 打开文件或者 URL 说明 resource fopen ( string filename, string mode [, int use_include_path [, resource zcontext]]) 表格 1. fopen() 中的 mode 的可能值列表 mode 说明 'r' 只读方式打开,将文件指针指向文件头。 'r+' 读写方式打开,将文件指针指向文件头。 'w' 写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。 'w+' 读写方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。 'a' 写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。 'a+' 读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。 'x' 创建并以写入方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回 FALSE,并生成一条 E_WARNING 级别的错误信息。如果文件不存在则尝试创建之。这和给 底层的 open(2) 系统调用指定 O_EXCL|O_CREAT 标记是等价的。此选项被 PHP 4.3.2 以及以后的版本所支持,仅能用于本地文件。 'x+' 创建并以读写方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回 FALSE,并生成一条 E_WARNING 级别的错误信息。如果文件不存在则尝试创建之。这和给 底层的 open(2) 系统调用指定 O_EXCL|O_CREAT 标记是等价的。此选项被 PHP 4.3.2 以及以后的版本所支持,仅能用于本地文件。 如果打开失败,本函数返回 FALSE。 例子 1. fopen() 例子 如果在用服务器模块版本的 PHP 时在打开和写入文件上遇到问题,记住要确保所使用的文件是服务器进程所能够访问的。 在 Windows 平台上,要小心转义文件路径中的每个反斜线,或者用斜线。 练习 创建一个文件
作者: fangzhen    时间: 2008-12-15 22:38     标题: PHP file_get_contents() 函数

定义和用法 file_get_contents() 函数把整个文件读入一个字符串中。 和 file() 一样,不同的是 file_get_contents() 把文件读入一个字符串。 file_get_contents() 函数是用于将文件的内容读入到一个字符串中的首选方法。如果操作系统支持,还会使用内存映射技术来增强性能。 语法 file_get_contents(path,include_path,context,start,max_length)参数 描述 path 必需。规定要读取的文件。 include_path 可选。如果也想在 include_path 中搜寻文件的话,可以将该参数设为 "1"。 context 可选。规定文件句柄的环境。 context 是一套可以修改流的行为的选项。若使用 null,则忽略。 start 可选。规定在文件中开始读取的位置。该参数是 PHP 5.1 新加的。 max_length 可选。规定读取的字节数。该参数是 PHP 5.1 新加的。 说明 对 context 的支持是 PHP 5.0.0 添加的。 提示和注释 注释:本函数可安全用于二进制对象。 例子 输出: Array ( [0] => Hello World. Testing testing! [1] => Another day, another line. [2] => If the array picks up this line, [3] => then is it a pickup line? )
作者: fangzhen    时间: 2008-12-15 22:44     标题: PHP file() 函数

定义和用法 file() 函数把整个文件读入一个数组中。 与 file_get_contents() 类似,不同的是 file() 将文件作为一个数组返回。数组中的每个单元都是文件中相应的一行,包括换行符在内。 如果失败,则返回 false。 语法 file(path,include_path,context)参数 描述 path 必需。规定要读取的文件。 include_path 可选。如果也想在 include_path 中搜寻文件的话,可以将该参数设为 "1"。 context 可选。规定文件句柄的环境。 context 是一套可以修改流的行为的选项。若使用 null,则忽略。 说明 对 context 的支持是 PHP 5.0.0 添加的。 返回的数组中每一行都包括了行结束符,因此如果不需要行结束符时还需要使用 rtrim() 函数。 提示和注释 注释:从 PHP 4.3.0 开始,可以用 file_get_contents() 来将文件读入到一个字符串并返回。 注释:从 PHP 4.3.0 开始,file() 可以安全用于二进制文件。 注释:如果碰到 PHP 在读取文件时不能识别 Macintosh 文件的行结束符,可以激活 auto_detect_line_endings 运行时配置选项。 例子 输出: Array ( [0] => Hello World. Testing testing! [1] => Another day, another line. [2] => If the array picks up this line, [3] => then is it a pickup line? )
作者: 孟匠炳    时间: 2011-11-24 12:20

提示: 作者被禁止或删除 内容自动屏蔽




欢迎光临 PHP开发笔记 (http://phpvi.com/) Powered by Discuz! 6.1.0