本节介绍php对文件的基本操作,包括
- 判断文件夹/文件是否存在
- 读取文件数据
- 写入数据到文件
- 创建/删除文件,或文件夹
判断文件是否存在
使用 file_exists 函数判断文件/文件夹是否存在
<?php
$exist = file_exists("新建文件夹"); // 参数,文件名
var_dump($exist); // true or false
如果要进一步判定该文件,到底是普通文件,还是文件夹?可以使用
- is_file(“文件名”) ==》判断是普通文件
- is_dir(“文件夹”) ==》判断是文件夹
读写文件内容
使用 fopen 打开与操作文件,返回一个句柄
<?php
$handle = fopen("文件名", "打开方式");
?>
mode | 说明 |
---|---|
'r' | 只读方式打开,将文件指针指向文件头。 |
'r+' | 读写方式打开,将文件指针指向文件头。 |
'w' | 写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。 |
'w+' | 读写方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。 |
'a' | 写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。 |
'a+' | 读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。 |
'x' | 创建并以写入方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回 false ,并生成一条 E_WARNING 级别的错误信息。如果文件不存在则尝试创建之。这和给 底层的 open(2) 系统调用指定 O_EXCL|O_CREAT 标记是等价的。 |
'x+' | 创建并以读写方式打开,其他的行为和 'x' 一样。 |
'c' | 打开该文件仅用于写入。如果文件不存在,则创建该文件。如果它存在,它既不会被截断(与“w”相反),也不会调用此函数失败(与“x”的情况相同)。文件指针位于文件的开头。如果需要在尝试修改文件之前获得建议锁(请参见flock()),这可能很有用,因为使用“w”可以在获得锁之前截断文件(如果需要截断,则可以在请求锁后使用ftruncate()。 |
'c+' | 打开文件进行读写;否则,它的行为与“c”相同。 |
读取文件内容
使用 fgets 按行读取,或 fgetc 按字符读取
在读取内容时,可以使用 feof($file) 判断是否读取到结尾
<?php
$file = fopen("index.html", "r") or exit("Unable to open file!");
//Output a line of the file until the end is reached
while(!feof($file))
{
echo fgets($file);
}
fclose($file);
?>
创建写入数据到文件
使用 w 方式打开文件时若不存在此文件,会自动创建
使用 fwrite 写入字符串,返回写入的长度
<?php
$file = fopen("test.txt","w");
echo fwrite($file,"Hello World. Testing!");
fclose($file);
?>
如果希望追加数据而不是覆盖,使用 a 方式
文件的创建删除
这里举例一些其他常用的文件/文件夹操作函数
- mkdir() ==》创建文件夹
- rmdir() ==》删除文件夹,(文件夹内无文件)
- opendir() ==》打卡文件夹,返回资源
- readdir() ==》读取当前打开目录下一个文件
- getcwd() ==》获取当前工作目录
- ullink() ==》删除指定文件
本篇完,还有疑问?留下评论吧