在 PHP 中读取文件时,我应该使用 flock 吗?



好的,所以我是PHP的新手,书中的例子表明,当我用php写入文件时,我应该在打开文件后使用flock($fp,LOCK_EX),然后在关闭文件之前使用flock($fp,LOCK_UN)。喜欢这个:

$fp = fopen("$DOCUMENT_ROOT/order.txt", 'ab');
flock($fp, LOCK_EX);
fwrite($fp, $outputstring, strlent($outputstring));
flock ($fp, LOCK_UN);
fclose($fp);

但是在另一个如何读取文件的例子中,我不确定作者是否忘记输入 flock(),或者读取文件时没有必要输入 flock()。下面是示例:

$fp = fopen("$DOCUMENT_ROOT/order.txt", 'rb');
while (!feof($fp))
{
   $order = fgets($fp, 999)
   echo $order."<br/>";
}
fclose($fp);

那么我应该把 flock() 放在第二个例子中吗?

提前谢谢你。

仅当有多个

进程同时访问文件时才需要使用flock

如果写入文件的代码在任何时候都只有一个副本运行,那么您可能不需要使用 flock 。但是,如果多个进程可以尝试同时运行代码(从而访问文件),则应使用 flock 来确保它们一次运行一个代码。

相关内容

  • 没有找到相关文章

最新更新