file_put_contents ( "file", "data", LOCK_EX )
Run Code Online (Sandbox Code Playgroud)
写作(意思是 - 获取锁定和写入)
file_get_contents ( "file", LOCK_EX )
Run Code Online (Sandbox Code Playgroud)
用于阅读(这意味着 - 获取锁定然后阅读)
它会抛出异常吗?提出错误?阻止直到获得锁定?或者至少 - 应该吗?有一天php会有这样的表现吗?
编辑:我知道可以使用重命名 - 我想知道答案...
我正在使用:
file_put_contents("peopleList.txt", $person, FILE_APPEND | LOCK_EX);
Run Code Online (Sandbox Code Playgroud)
写入文件的末尾并确保没有其他人(或脚本)同时写入同一文件.
在PHP手册说,如果不成功,将返回一个falsy值.
如果它无法获取文件的锁定,它会失败还是继续尝试直到它可以?如果在无法获得锁定时失败,那么确保写入数据的最佳方法是什么?
也许在while循环中循环该函数,直到它不返回false(cringe)或只是向用户(网站访问者)提供某种GUI请求他们再试一次?