PHP 文件处理
PHP 作为主流的服务器端脚本语言,拥有强大而完善的文件系统处理能力。其内置的多种文件操作函数使开发者能够高效地实现文件的创建、读取、写入、修改等操作,同时提供完善的权限控制和错误处理机制,确保服务器文件系统的安全访问与管理。无论是处理简单的文本文件还是复杂的二进制文件,PHP 都能提供稳定可靠的解决方案。
打开文件
PHP 使用fopen()
函数打开文件,它需要两个参数:文件名和打开模式。
$file = fopen("kaicz.txt","r") or exit("Unable to open file!");
✅ 常见地打开模式包括:
模式 | 说明 | 文件不存在时 |
---|---|---|
r |
只读方式打开,文件指针指向文件开头 | 返回false |
r+ |
读写方式打开,文件指针指向文件开头 | 返回false |
w |
写入方式打开,清空文件内容 | 尝试创建 |
w+ |
读写方式打开,清空文件内容 | 尝试创建 |
a |
写入方式打开,文件指针指向文件末尾 | 尝试创建 |
a+ |
读写方式打开,文件指针指向文件末尾 | 尝试创建 |
x |
创建并以写入方式打开 | 返回false(如果文件已存在) |
x+ |
创建并以读写方式打开 | 返回false(如果文件已存在) |
c |
写入方式打开,不截断文件 | 尝试创建 |
c+ |
读写方式打开,不截断文件 | 尝试创建 |
关闭文件
fclose()
函数用于关闭已打开的文件资源,这是一个良好的编程习惯,可以释放系统资源。
$file = fopen("kaicz.txt","r") or exit("Unable to open file!");
// 执行一些代码
fclose($file);
检测文件末尾(EOF)
feof()
函数用于检测是否已到达文件末尾(EOF)。在循环遍历未知长度的数据时,feof()
函数很有用。
if (feof($file)) echo "文件结尾";
指定长度读取文件
fread()
是 PHP 中用于从文件指针读取指定长度内容的函数。它需要两个参数:文件系统指针和要读取的最大字节数。
// 打开文件
$file = fopen("kaicz.txt","r") or exit("Unable to open file!");
// 读取前 100 个字节
$content = fread($file, 100);
// 关闭文件
fclose($file);
// 输出内容
echo $content;
逐行读取文件
fgets()
是 PHP 中用于逐行读取文件内容的函数。它需要两个参数:由fopen()
打开的文件指针和每行读取的最大字节数。
最大字节数指每行读取最大字节(可选)。如果不设置,默认读取一行直到遇到换行符(\n
或\r\n
)或文件结束(EOF)。
$file = fopen("kaicz.txt","r") or exit("Unable to open file!");
if ($file) {
while (($line = fgets($file)) !== false) {
echo $line . "
"; // 逐行输出内容
}
fclose($file); // 关闭文件
} else {
echo "无法打开文件!";
}
逐字符读取文件
fgetc()
是 PHP 中用于从文件指针处读取一个字符的函数。它需要一个参数:文件指针资源,必须是有效的、已打开的文件资源。
$file = fopen("kaicz.txt","r") or exit("Unable to open file!");
if ($file) {
while (($char = fgetc($file)) !== false) {
echo $char;
}
fclose($file);
}
文件写入操作
fwrite()
是 PHP 中用于向文件写入数据的函数。它需要三个参数:文件系统指针资源,通常由fopen()
创建、要写入文件的字符串数据、指定写入长度(可选)。
$file = fopen("kaicz.txt", "w"); // 以写入模式打开文件
if ($file) {
$bytes = fwrite($file, "Hello, World!"); // 写入内容
fclose($file); // 关闭文件
echo "成功写入 {$bytes} 字节。";
} else {
echo "无法打开文件!";
}
评论区 0
发表评论
教程介绍
PHP 通用开源服务器端脚本语言,特别适用于 Web 开发,能够嵌入 HTML 中使用。
42
章节
32
阅读
0
评论
反馈提交成功
感谢您的反馈,我们将尽快处理您的反馈