2011-06-14 79 views
5

我想制作一个平面文件数据库,它将使用.php文件来存储网站的数据。我唯一的问题是,如果当我从flatfile数据库中选择了某个东西(这意味着该文件被重复使用),如果在那个时候“更新”正在进行(这意味着该文件被修改并写入),则文件会被获取空白,我放松了所有的内容。PHP检查文件是否正在使用

我讨厌一些东西,检查文件是否正在使用,如果是,等待几毫秒并再次检查。

+0

你尝试SQLite的? – Gumbo 2011-06-14 08:57:41

+0

我只是想创建我自己的系统。 – Octavian 2011-06-14 09:02:58

回答

9
+0

这是否解决了您的问题?我也试图使用这个,但它似乎像群不跨不同的Apache请求锁定文件。因此,例如,如果一个用户在另一个apache请求中锁定一个文件和另一个用户,检查该锁定,则该文件不会被锁定。似乎flock仅适用于当前的PHP实例。你不是面对这个问题吗? – 2016-02-11 20:59:25

-3

请尽量将它的工作对我而言....

if(readyToRead(__FILE__)){ 
     echo "File is ready to read."; 
    } else{ 
     echo "File is used by somebody else."; 
    } 

    function readyToRead($file){ 
     return ((time() - filemtime($file)) > 5) ? true : false; 
    }