使用file_put_contents测试与其他任何人同时写入文件

时间:2014-11-04 20:47:48

标签: php io

我在页面上有一个表单,在提交其内容后,使用file_put_contents将其写入文件。 我在写入文件时使用LOCK_EX来锁定文件。但有没有办法尝试这实际上是有效的,并看看当文件被同时调用两次时会发生什么。

$answer = file_put_contents($file, $skier, FILE_APPEND | LOCK_EX);

    if($answer != false){
      //I want to see if that works
    } 

提前致谢

2 个答案:

答案 0 :(得分:0)

您可以尝试启动N bat / shell,它将尝试同时执行您的PHP代码并访问同一个文件

答案 1 :(得分:0)

正如您在manual中所看到的那样:

  

此函数与调用fopen(),fwrite()和fclose()相同   先后将数据写入文件。

所以为了测试它,你可以:

  1. 打开文件并使用fopen();
  2. 将其锁定
  3. 使用flock();
  4. 锁定文件
  5. 使用fwrite();
  6. 写一行
  7. 使用sleep();
  8. 等几秒钟
  9. 重复前两个步骤;
  10. 或多或少同时从两个浏览器/计算机/标签中调用此脚本。
相关问题