-2

我无法使用标签删除文件unlink(),当我使用fopen标签时"w",出现错误。该文件具有777chmod。我可以用fopen()写在文件的末尾。但我不能删除任何东西。有人可以帮我吗?

这是一个示例:

   echo substr(sprintf('%o', fileperms('..')), -4); //777
   echo substr(sprintf('%o', fileperms('.')), -4); //777
   echo substr(sprintf('%o', fileperms('test')), -4); //777
   chmod('tmp',0777);  //Permission denied
4

2 回答 2

2

对于unlink文件,您需要对其所在目录的写入权限。拥有文件本身chmod无济于事777

于 2012-04-19T15:19:59.090 回答
0

我之前遇到过这个问题,并且能够通过在关闭文件和取消链接之前强制垃圾收集来进行补救:

gc_collect_cycles();

到目前为止,这不是最好的解决方案,但它确实解决了我删除之前打开和关闭行的文件的问题。

于 2017-01-03T21:36:04.270 回答