您的位置:首页 > 编程语言 > PHP开发

关于PHP如何用代码删除Runtime下的文件,做到物理删除缓存

2015-09-20 19:51 871 查看
public function deltree($pathdir)
{
echo $pathdir;//我调试时用的
if($this->is_empty_dir($pathdir)){//如果是空的
rmdir($pathdir);//直接删除
}else{//否则读这个目录,除了.和..外
$d=dir($pathdir);
while($a=$d->read())
{
if(is_file($pathdir.'/'.$a) && ($a!='.') && ($a!='..')){unlink($pathdir.'/'.$a);}
//如果是文件就直接删除
if(is_dir($pathdir.'/'.$a) && ($a!='.') && ($a!='..'))
{//如果是目录
if(!$this->is_empty_dir($pathdir.'/'.$a))//是否为空
{//如果不是,调用自身,不过是原来的路径+他下级的目录名
$this->deltree($pathdir.'/'.$a);
}
if($this->is_empty_dir($pathdir.'/'.$a))
{//如果是空就直接删除
rmdir($pathdir.'/'.$a);
}
}
}
$d->close();
echo "必须先删除目录下的所有文件";//我调试时用的
}
}
public function is_empty_dir($pathdir)
{
//判断目录是否为空,我的方法不是很好吧?只是看除了.和..之外有其他东西不是为空
$d=opendir($pathdir);
$i=0;
while($a=readdir($d))
{
$i++;
}
closedir($d);
if($i>2){return false;}
else return true;
}
public function runtime(){
$pathdir = APP_PATH."Runtime";
$a = $this->deltree($pathdir);
dump($a);
}


然后直接在浏览器中打开runtime()这个方法就行了。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: