PHP的fwrite()函数用于向已打开的文件写入数据,其核心用法和注意事项如下:
1. 基本语法
int fwrite(resource $handle, string $string [, int $length])
参数:
$handle:必需,由fopen()打开的文件指针资源$string:必需,要写入的字符串内容$length:可选,限制写入的最大字节数(默认写入完整字符串)返回值:成功时返回写入的字节数,失败返回
FALSE
2. 使用流程
打开文件
需先通过fopen()获取文件句柄,并指定写入模式(如"w"覆盖或"a"追加)
$handle = fopen("log.txt", "a"); // 追加模式写入数据
调用fwrite()写入内容,支持二进制数据
$bytes = fwrite($handle, "Data to write\n"); // 写入并换行
关闭文件
必须显式调用fclose()释放资源
fclose($handle);
3. 关键特性
写入模式:
"w":覆盖原有内容,文件不存在则创建"a":追加内容到文件末尾"x":独占创建,文件存在则失败二进制安全:支持文本和非文本数据(如图像)写入
换行符处理:需手动添加
\n(Unix)或\r\n(Windows)实现换行
4. 注意事项
错误处理:需检查返回值,避免静默失败
权限问题:确保脚本对目标文件有写入权限
性能优化:批量写入比多次调用更高效
5. 示例代码
追加日志记录:
$handle = fopen("app.log", "a");
fwrite($handle, date("Y-m-d H:i:s") . " - Event logged\n");
fclose($handle);此代码以追加模式记录带时间戳的事件日志