PHP打开并修改文件 - 加锁形式

<?php
require_once 'ErrorCatch.php';

$filepath = "a/a.log";
// fopen 多个进程同时获取资源句柄
if ( ! $fp = fopen($filepath, "ab")) {
    return FALSE;
}
var_dump($fp);
$message = date('Y-m-d H:i:s')."\n";
// 这个文件锁 队列形式 - 多个文件同时要修改文件只能队列形式
flock($fp, LOCK_EX);
fwrite($fp, $message);
flock($fp, LOCK_UN);
fclose($fp);
@chmod($filepath, 0755);
return true;

注意fopen多个文件的时候,可以同时多个进程拥有资源句柄

而lock则只能一次一个获取

posted @ 2020-11-03 14:26  许伟强  阅读(147)  评论(0编辑  收藏  举报