今天没什么事情,就写了个小东西学习学习,递归创建文件夹,和删除指定文件下的所有东西包括文件本身。因为有的时候我们做文件上传是需要穿件文件夹的。而且有的时候我们也会用到文件夹的删除操作,文件的删除很简单,用unlink指定路径就可以了。做这个东西的时候,我发现mkdir里面如果用mkdir(‘/aa/’)会在磁盘的顶级目录创建文件夹aa,这样是不是有点危险,因为程序的安装都是在磁盘下的某个目录下,这样的话就超出了程序的范围。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
function creartDir($dir=''){ //以/来分割路径 $dir = trim($dir,'/'); $dir = explode('/',$dir); if(!$dir){ return false; } $ndir=''; foreach($dir as $key=>$val){ $ndir .= $val; if(!is_dir($ndir)){ mkdir($ndir); } $ndir .='/'; } } //删除文件下的所有文件和文件夹 function deldir($dir) { $dh=opendir($dir); while ($file=readdir($dh)) { if($file!="." && $file!="..") { $fullpath=$dir."/".$file; if(!is_dir($fullpath)) { unlink($fullpath); } else { deldir($fullpath); } } } closedir($dh); if(rmdir($dir)) { return true; } else { return false; } } |
程序本天成,妙手偶得之!我们只是代码的搬运工!
转载请注明:http://www.521php.com/archives/324/