PHP目录操作实例总结

2018-09-07 21:39

阅读:246

  本文实例总结了PHP目录操作方法。分享给大家供大家参考,具体如下:

  目录操作

  新建目录:mkdir(路径,权限,递归创建)

  删除目录:rmdir()

  移动(改名):rename()

  获取目录内容:

  //打开目录

  目录句柄 = opendir()

  //读取目录

  文件名 = readdir(目录句柄)

  依次读取文件名,同时向下移动文件句柄指针,读取不到则返回false

  //关闭目录

  closedir()

  递归读取目录内容:

   <?php showDir(../../file); function showDir($path,$dep=0){ $pos = opendir($path); while(false!==$file=readdir($pos)){ if($file==.$file==..) continue; echo str_repeat(&nbsp,$dep*4),$file.</br>; if(is_dir($path./.$file)){ $func = __FUNCTION__; $func($path./.$file,$dep+1); } } }

  运行效果图如下:

   <?php $res = showDir(../../file); echo <pre>; print_r($res); function showDir($path){ $pos = opendir($path); $next = array(); while(false!==$file=readdir($pos)){ if($file==.$file==..) continue; $fileinfo = array(); $fileinfo[name] = $file; if(is_dir($path./.$file)){ $fileinfo[type] = dir; $func = __FUNCTION__; $fileinfo[next] = $func($path./.$file); }else{ $fileinfo[type] = file; } $next[] = $fileinfo; } closedir($pos); return $next; }

  运行效果图如下:

  递归删除目录:

   <?php showDir(../../file/sim); function showDir($path,$dep=0){ $pos = opendir($path); while(false!==$file=readdir($pos)){ if($file==.$file==..) continue; // echo str_repeat(&nbsp,$dep*4),$file.</br>; if(is_dir($path./.$file)){ $func = __FUNCTION__; $func($path./.$file,$dep+1); }else{ unlink($path./.$file); } } rmdir($path); closedir($pos); }

  目录文件编码问题:

  展示时,将操作系统编码转换为响应数据编码

  windows为gbk,项目 utf-8

   iconv(gbk,utf-8,file);

  代码地址存在中文:需要转换为系统编码

   iconv(utf-8,gbk,file);

  更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP目录操作技巧汇总》、《php文件操作总结》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

  希望本文所述对大家PHP程序设计有所帮助。


评论


亲,登录后才可以留言!