当我在windows下创建一个符号链接(在linux下没有测试它)并且想要再次删除/取消链接时(我用unlink() - 函数尝试了它),它总是删除符号链接+原始文件。但我只是想删除符号链接。它没有任何功能吗?
答案 0 :(得分:4)
检查此答案:https://stackoverflow.com/a/12288764/3910083
unlink()是正确的方法
我的项目中的代码片段,只有在符号链接
时才会被删除if(file_exists($linkfile)) {
if(is_link($linkfile)) {
unlink($linkfile);
} else {
exit("$linkfile exists but not symbolic link\n");
}
}
readlink(),返回链接的目标,你可以在那个
上运行unlinkif(is_link($linkfile)) {
$target = readlink($linkfile)
unlink($target)
}
答案 1 :(得分:0)
结果是文件消失而没有痕迹。
<?php
unlink ('my_link');
?>
答案 2 :(得分:0)
确保您使用的是软链接,而不是硬链接
从here
检查Mklink的使用情况答案 3 :(得分:0)
在 linux 上,为了安全起见,我会选择使用
shell_exec('rm ' . $file);
答案 4 :(得分:-2)
阅读本文: -
http://php.net/manual/en/function.symlink.php
试试这个: -
symlink($target, $link);
unlink($link);
unlink($target);