所以 如果我用一个+喜欢的
打开一个文件fopen($filepath,'a+');
file($filepath);
然后我用文件($ filepath)获取文件内容就可以了
但为什么我什么时候 我用flock锁定文件我也可以使用file()函数获取内容 为什么?
$fp = fopen($filepath, "a+");
while (1) {
$f =flock($fp,LOCK_EX);
if($f){
fwrite($fp,'abc');
echo "ok loked \n";
sleep(1);
$te =file($filepath);
if(strlen($te[0])==10){
echo "this is cont ".$te[0]."\n";
echo "ok this the end \n";
ftruncate($fp,0);
fflush($fp);
}
flock($fp, LOCK_UN);
break;
}
}
fclose($fp);
他们的关系怎么样?
flock文件时file()函数是否使用fopen资源?
文件是独立的功能还是使用fopen?
答案 0 :(得分:0)
fopen
和file
是两个不同的功能。
fopen fopen函数完全不同 - 它会打开一个文件 描述符,用作读取或写入文件的流。它 是一个更低级别的功能,一个围绕C fopen的简单包装器 功能,简单地打电话给fopen除了打开之外什么都不做 流。
文件 - 将整个文件读入数组
答案 1 :(得分:0)
群是每个进程。因此,如果同一进程(包括所有线程)多次尝试聚集,它将始终成功。