unlink()不适用于绝对路径

时间:2017-10-17 10:47:01

标签: php unlink

我正在研究一种使用unlink()删除图片的方法。但是我找不到使用绝对路径使其工作的方法。

这是我的代码:

$img = $_SERVER['DOCUMENT_ROOT'].'/i/koala.png';
unlink($img);

错误:

Warning: unlink(/var/www/html/i/koala.png): No such file or directory in /var/www/html/king/test.php on line 15

任何帮助?

2 个答案:

答案 0 :(得分:1)

当你拼凑各种字符串来制作路径时,你应该使用realpath来验证它并转换任何相对片段,如/../

http://php.net/manual/en/function.realpath.php

$path = $_SERVER['DOCUMENT_ROOT'].'/i/koala.png';
$img = realpath($path);

$ img将为false,或者是一个有效路径的字符串!

答案 1 :(得分:1)

立即查看

$filename = '/var/www/html/i/koala.png';

if(file_exists($filename))
{
  chmod($filename, 777);
  unlink($filename);
  echo "file has deleted";
}
else
{
 echo "file not exists";
}