我的应用程序中有这个代码,通常由我的应用程序的几个用户在竞争条件下运行
clearstatcache(TRUE, $filepath);
if(file_exists($filepath)) unlink($filepath);
但是,对于这行代码,我每天仍有几个错误,如
取消链接(文件):没有这样的文件或 目录
服务器运行Apache 2.2和PHP 5.3.3。我知道种族问题,但认为@操作员只是邪恶。我首先尝试没有任何参数clearstatcache(),具有相同的错误。 我怎么能以正确的方式做到这一点?
答案 0 :(得分:6)
你可以试试这个
if(@unlink($path)) {
echo "Deleted file ";
}
else{
echo "File can't be deleted";
}
我认为它会很好;
答案 1 :(得分:5)
正如评论中所述,我的需要是确保我已删除该文件,而不是知道女巫进程删除它,所以
@unlink($filepath);
clearstatcache(TRUE, $filepath);
if(file_exists($filepath)) throw new Exception('file not deleted : ' . $filepath);
可能是更好的方式。
非常感谢您的帮助,通过多次评论来思考另一种方式会更容易。