【发布时间】:2016-07-28 18:16:33
【问题描述】:
我目前正在尝试创建一个功能,允许某些管理用户删除我们 Wordpress 网站上的帖子。更具体地说,直接从 Wordpress 媒体库中删除文件。我可以按类型成功检索这些文件并显示它们的名称,但是每当我尝试使用 unlink() 方法从使用中删除某些文件时,它会搜索相对于 php 脚本而不是服务器的文件。我尝试使用 $_SERVER['DOCUMENT_ROOT'] 并重复添加“../”以返回足够多的目录以正确指定文件路径,但是这两个选项都不起作用。我也不能为 unlink() 使用 $context 参数,因为 php 版本不是最新的,目前更新它是不可行的。这是我的一些代码:
foreach($imgs as $img){
$imgcutpath = substr($img, 0, 33);
fopen($img, "r");
$imgpath = str_replace($imgcutpath, "", $img);
echo "<a href='?delete=1'> Delete</a>";
if (isset($_GET['delete']))
{ unlink($_SERVER['DOCUMENT_ROOT'] . $imagepath); }
}
这也是我收到的警告:
Warning: unlink(/path/to/file/from/server): Is a directory in
/path/to/php/file/running/this/code/from/server/phpfile.php on line 28
这并不完全是警告,出于安全原因,我只是替换了实际的文件路径。感谢您的帮助!
【问题讨论】: