• 技术文章 >后端开发 >php教程

    php遍历所有文件及文件夹的方法深入解析_PHP教程

    2016-07-21 15:08:26原创388
    1.方法一:
    复制代码 代码如下:

    $dir="D:";
    static $dir_list =0;
    static $file_list =0;
    function listfile($dir){
    global $dir_list,$file_list;
    $d = dir($dir);
    while ( $entry = $d->read()) {
    $tem_curnt=$dir."//m.sbmmt.com/m/".$entry;
    if($entry=="." || $entry=="..") continue;
    if ( is_dir( $tem_curnt)) {
    listfile($tem_curnt);
    echo "文件夹 ".$tem_curnt."
    ";
    $dir_list++;
    }
    elseif ( is_file($tem_curnt)) {
    echo "文件".$tem_curnt."
    ";
    $file_list++;
    }
    }
    $d->close();
    }
    listfile($dir);
    echo "目录数:".$dir_list;
    echo"
    ";
    echo"文件数:".$file_list;
    ?>

    2.方法二:
    复制代码 代码如下:

    function list_dir($dirpath){
    if($dirpath[strlen($dirpath)]-1!='//m.sbmmt.com/m/'){
    $dirpath.="//m.sbmmt.com/m/";
    }
    static $result_array=array();
    if(is_dir($dirpath)){
    $files_dirs=scandir($dirpath);
    foreach($files_dirs as $file){
    if($file=='.'||$file=='..'){continue;}
    if(is_dir($dirpath.$file)){
    list_dir($dirpath.$file);
    }else{
    array_push($result_array,$dirpath.$file);
    }
    }
    }
    return $result_array;
    }
    $array=list_dir('D:/www');
    foreach($array as $value){
    echo $value;
    echo "
    ";
    }
    ?>

    3.方法三:
    复制代码 代码如下:

    function list_dir($dirpath){
    if($dirpath[strlen($dirpath)-1]!="//"){$dirpath.="//";}
    static $result_array=array();
    if(is_dir($dirpath)){
    $handle=opendir($dirpath);
    while($file=readdir($handle)){
    if($file=="."||$file==".."){continue;}
    if(is_dir($dirpath.$file)){
    list_dir($dirpath.$file."//");
    }else{
    array_push($result_array,$dirpath.$file);
    }
    }
    closedir($handle);
    }
    return $result_array;
    }
    $array=list_dir("D:/www");
    foreach($array as $value){
    echo $value;
    echo "
    ";
    }
    ?>

    4.方法四:
    复制代码 代码如下:

    function list_dir($dirpath){
    if($dirpath[strlen($dirpath)-1]!="//"){$dirpath.="//";}
    static $result_array=array();
    if(is_dir($dirpath)){
    $dir=dir($dirpath);
    while($file=$dir->read()){
    if($file=="."||$file==".."){continue;}
    if(is_dir($dirpath.$file)){
    list_dir($dirpath.$file."//");
    }else{
    array_push($result_array,$dirpath.$file);
    }
    }
    $dir->close();
    }
    return $result_array;
    }
    $array=list_dir("D:/www");
    foreach($array as $value){
    echo $value;
    echo "
    ";
    }
    ?>

    www.bkjia.comtruehttp://www.bkjia.com/PHPjc/327479.htmlTechArticle1.方法一: 复制代码 代码如下: ? $dir="D:"; static $dir_list =0; static $file_list =0; function listfile($dir){ global $dir_list,$file_list; $d = dir($dir); while ( $ent...

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:php 遍历 所有 文件 文件夹 方法 深入 解析 方法 复制 代码 如下 dir static list
    上一篇:浅谈PHP强制类型转换,慎用!_PHP教程 下一篇:探讨PHP函数ip2long转换IP时数值太大产生负数的解决方法_PHP教程
    Web大前端开发直播班

    相关文章推荐

    • php反序列化实例详解之字符串逃逸• 一文带你PHP利用phpmailer实现邮件发送功能• 什么是PHPUnit?在PHP项目中怎么使用?• 模板引擎SMARTY_PHP• [转一篇比较老的文章]编写自己的php扩展函数_PHP

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网