window下,使用PHP的unlink(),报错说permission denied,求解

如花是我的 2018-05-15 11:36:30
先贴上源码:

$iid = input('id');

$info = db('image') -> where('iid',$iid) -> find();
$dir = iconv('UTF-8','GBK',ROOT_PATH.'public/'.$info['path']);

if($handle = opendir($dir)){
while(($file = readdir($handle)) != false){
unlink($file);
// dump($file);
}
closedir($handle);
$res = rmdir($dir);
if($res){
return "成功了";
} else {
return "失败了"; }
} else {
return "没打开";

}

我用的是tp5框架,这是在一个delete方法中,要删除库中的数据和相应的目录。

opendir能打开目录,utf8格式的$dir是:E:\HTML\Apache\zhumulu\fuck527\public/static/up_images/火影
dump($file)也能把所有的文件打印出来,

但是一执行unlink(),就会报错:unlink(.): Permission denied

网上说是权限不够,但我不是linux啊,到底怎么回事啊
...全文
2088 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Mr_风 2018-08-24
  • 打赏
  • 举报
回复
$fp = fopen($path.$val,'r');
fclose($fp);
先打开文件,然后再关闭就好了
xuzuning 2018-05-15
  • 打赏
  • 举报
回复
windows 中一般不存在权限问题,但在 ntfs 分区中,全县还是会其作用的。另外就是待删除的文件正在被打开
如花是我的 2018-05-15
  • 打赏
  • 举报
回复 1
引用 1 楼 xuzuning 的回复:
windows 中一般不存在权限问题,但在 ntfs 分区中,全县还是会其作用的。另外就是待删除的文件正在被打开
文件没有被打开,我试着用chmod(),也不行

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧