PHP文件处理

PHP 文件处理


数据的存取

数据在服务器上的存取主要有两种方式:文件或者数据库

目前绝大多数应用都是使用数据库来读写数据,但是文件存取在某些场合仍然会使用,譬如:

• 记录错误日志

• 导出数据到文件

从文件导入数据

写文件

写文件主要有三步操作,就如同我们手动操作一样,程序也要遵守下面的步骤:

• 打开文件,使用fopen函数

• 写入文件,使用fwrite函数

• 关闭文件,使用fclose函数

打开文件

fopen() 函数用于在 PHP 中打开文件。

此函数的第一个参数含有要打开的文件的名称,第二个参数规定了使用哪种模式来打开文件:

    

文件可能通过下列模式来打开:

QQ图片20161009145912.png

注释:如果 fopen() 函数无法打开指定文件,则返回 0 (false)。

实例

如果 fopen() 函数不能打开指定的文件,下面的实例会生成一段消息:

    

写入文件

fwrite () 函数用于写入文件

fwrite主要也是两个参数,handle是fopen打开成功后返回的Resource变量,string是要写入的数据

int fwrite ( resource $handle , string $string [, int $length ] )

当写入成功后,fwrite会返回写入的字符数,如果写入失败则返回false

实例

请注意,我们向文件 "newfile.txt" 写了两次。在每次我们向文件写入时,在我们发送的字符串 $txt 中,第一次包含 "Bill Gates",第二次包含 "Steve Jobs"。在写入完成后,我们使用 fclose() 函数来关闭文件。

如果我们打开 "newfile.txt" 文件,它应该是这样的:

Bill Gates

Steve Jobs

读取文件

fread用来读取整个文件,而不用使用while语句进行循环,需要注意,第二个参数是用来控制读取的最大字节数,这个参数是必填的

string fread ( resource $handle , int $length )

执行

echo fread($resource, 1024);

可以读取最大1024个字节的文件内容

关闭文件

fclose() 函数用于关闭打开的文件:

检测文件末尾(EOF)

feof() 函数检测是否已到达文件末尾(EOF)。

在循环遍历未知长度的数据时,feof() 函数很有用。

注释:在 w 、a 和 x 模式下,您无法读取打开的文件!

if (feof($file)) echo "文件结尾";

逐行读取文件

fgets() 函数用于从文件中逐行读取文件。

注释:在调用该函数之后,文件指针会移动到下一行。

实例

下面的实例逐行读取文件,直到文件末尾为止:

"; } fclose($file); ?>

逐字符读取文件

fgetc() 函数用于从文件中逐字符地读取文件。

注释:在调用该函数之后,文件指针会移动到下一个字符。

实例

下面的实例逐字符地读取文件,直到文件末尾为止:

file_put_contents

无论是读还是写,fopen和fclose都是很繁琐的调用,从PHP5开始,引入了新的函数

int file_put_contents ( string $filename , mixed $data [, int $flags = 0 [, resource $context ]] )

file_put_contents 相当于执行了 fopen + fwrite + fclose

file_put_contents('file', "hello worldn");

file_put_contents('file', "hello worldn", FILE_APPEND);

file_get_contents

string file_get_contents ( string $filename [, bool $use_include_path = false [, resource$context [, int $offset = -1 [, int $maxlen ]]]] )

file_get_contents 相当于执行了 fopen + fread + fclose

echo file_get_contents('file');

其他文件操作函数

S file_exists 将文件地址作为参数传入,可以判断文件是否存在,然后true或者false

S filesize 可以返回参数中文件的大小,以字节为单位

S unlink 可以删除传递给它的文件地址所代表的文件


PHP Filesystem 参考手册

如需查看 PHP 文件系统函数的完整参考手册,请访问我们的PHP Filesystem 参考手册。


继续学习
||
提交 重置代码
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!