当文件在根目录中时,取消链接PHP有效,而当文件在文件夹中时则无效


unlink PHP works when file is in root, not if file is in folder

所以这是非常直接的,我想用PHP删除服务器上的一个文件,我有:

$myfile = 'theone.png';
unlink($myfile);

这段代码删除了这个文件,但是如果文件的路径是/images/theone.png,它就不起作用了,我尝试过images''theone.png但没有成功。

如果我尝试连接FTP,我会收到错误消息,说cURL不支持取消链接功能。。。任何帮助都会很棒。

谢谢,伙计们!

关于:

$root = realpath($_SERVER['DOCUMENT_ROOT']);
$myfile = '$root/images/theone.png';
unlink($myfile);

尽管据我所知,你尝试的方法应该有效,除非我遗漏了什么,或者你没有在这里包含一些可能干扰取消链接的代码。

__DIR__-这个神奇的常量包含当前目录,如果该文件与您的PHP脚本位于同一目录中,您可以使用:

unlink(__DIR__ . "/$myfile");

例如,如果文件位于PHP脚本上方的一个目录中,则可以使用:

unlink(__DIR__ . "/../$myfile");

如果目录具有正确的访问权限,它应该可以工作。