当前位置:首页 > PHP

php实现文件读写操作

2026-01-29 05:44:56PHP

文件读取操作

使用file_get_contents函数可以快速读取整个文件内容到一个字符串中。适合读取小文件,简单高效。

$content = file_get_contents('example.txt');
echo $content;

fopen配合fread适合处理大文件或需要逐行读取的场景。通过指定读取模式(如'r')和缓冲区大小控制读取过程。

$handle = fopen('example.txt', 'r');
$content = fread($handle, filesize('example.txt'));
fclose($handle);

file函数将文件按行读取到数组中,每行作为数组的一个元素。适合需要按行处理的场景。

$lines = file('example.txt');
foreach ($lines as $line) {
    echo $line;
}

文件写入操作

file_put_contents函数提供最简单的写入方式,可覆盖或追加内容。通过FILE_APPEND参数实现追加写入。

// 覆盖写入
file_put_contents('output.txt', 'Hello World');

// 追加写入
file_put_contents('output.txt', "\nNew line", FILE_APPEND);

fopen配合fwrite支持更灵活的写入控制。需要手动关闭文件句柄防止资源泄漏。

$handle = fopen('output.txt', 'w');
fwrite($handle, 'First line');
fwrite($handle, "\nSecond line");
fclose($handle);

文件指针操作

ftell获取当前指针位置,fseek移动指针位置,rewind重置指针到文件开头。适用于需要随机访问的场景。

$handle = fopen('example.txt', 'r');
fseek($handle, 10); // 移动到第10字节
echo ftell($handle); // 输出当前位置
rewind($handle);     // 重置到开头
fclose($handle);

错误处理

文件操作时应始终检查操作结果并处理可能出现的错误。is_readableis_writable可预先检查权限。

if (!file_exists('example.txt')) {
    die('文件不存在');
}

if (!is_writable('output.txt')) {
    die('文件不可写');
}

二进制文件处理

使用'b'模式标记处理二进制文件,如图片或可执行文件。防止不同系统下的换行符转换问题。

// 二进制读取
$handle = fopen('image.jpg', 'rb');
$data = fread($handle, filesize('image.jpg'));
fclose($handle);

// 二进制写入
$handle = fopen('copy.jpg', 'wb');
fwrite($handle, $data);
fclose($handle);

临时文件处理

tmpfile创建临时文件,脚本结束后自动删除。sys_get_temp_dir获取系统临时目录路径。

php实现文件读写操作

$temp = tmpfile();
fwrite($temp, "Temporary data");
fseek($temp, 0);
echo fread($temp, 1024);
// 脚本结束自动删除

标签: 操作文件
分享给朋友:

相关文章

react 如何操作cookie

react 如何操作cookie

安装依赖 在React项目中操作cookie通常需要第三方库的支持,推荐使用js-cookie。通过npm或yarn安装: npm install js-cookie # 或 yarn add js…

如何编译react文件

如何编译react文件

编译 React 文件的方法 使用 Create React App (CRA) Create React App 是官方推荐的快速搭建 React 项目的工具,内置了 Babel 和 Webpack…

js实现文件的上传

js实现文件的上传

文件上传的基本实现 使用HTML的<input type="file">元素配合JavaScript的File API可以实现文件上传功能。HTML部分需要包含一个文件选择控件和一个提交按…

vue实现文件预览功能

vue实现文件预览功能

实现文件预览功能的方法 在Vue中实现文件预览功能可以通过多种方式完成,具体取决于文件类型和需求。以下是几种常见的实现方法: 图片预览 对于图片文件,可以使用HTML5的FileReader API…

vue实现拖动文件移动

vue实现拖动文件移动

Vue 实现文件拖动移动 实现文件拖动移动功能通常涉及 HTML5 的拖放 API 和 Vue 的事件处理。以下是具体实现方法: 基础拖放实现 在 Vue 组件中设置拖放区域并处理相关事件:…

vue axios实现文件下载

vue axios实现文件下载

使用 Axios 实现文件下载 在 Vue 项目中,可以通过 Axios 发送请求实现文件下载功能。以下是具体实现方法: 发送 GET 请求下载文件 axios({ method: 'g…