zoukankan      html  css  js  c++  java
  • ZH奶酪:PHP遍历目录/文件的3种方法

    其实PHP中内建函数scandir()就可以返回目录下全部文件和目录了。。。

    ==========================

    1、使用$obj = dir($dir)返回目录对象$obj,然后使用其$obj->read()方法遍历;

     1 <?php
     2 /**
     3  * Created by PhpStorm.
     4  * User: Zhang He
     5  * Date: 2015/6/8
     6  * Time: 12:21
     7  */
     8 function traverseDir( $filedir ) {
     9     //打开目录
    10     $dir = @dir($filedir);
    11     //列出目录中的文件
    12     while (($file = $dir->read())!==false){
    13         if(is_dir($filedir."/".$file) AND ($file!=".") AND ($file!="..")){
    14             //递归遍历子目录
    15             traverseDir($filedir."/".$file);
    16         } else {
    17             //输出文件完整路径
    18             echo "filename: " .$filedir."/".$file . "<br />";
    19         }
    20     }
    21     $dir->close();
    22 }
    23 //测试:遍历当前目录
    24 traverseDir(".");
    25 ?>

    2、先使用$obj = opendir($dir)获取对象$obj,再使用readdir($obj)遍历目录

     1 <?php
     2 /**
     3  * Created by PhpStorm.
     4  * User: Zhang He
     5  * Date: 2015/6/8
     6  * Time: 12:21
     7  */
     8 function traverseDir($dir){
     9     if(is_dir($dir)){
    10         if ($obj = opendir($dir)){
    11             while (($file = readdir($obj)) !== false){
    12                 if((is_dir($dir."/".$file)) and $file!="." and $file!=".."){
    13                     echo "<b><font color='red'>文件名:</font></b>",$file,"<br><hr>";
    14                     traverseDir($dir."/".$file."/");
    15                 }else{
    16                     if($file!="." and $file!=".."){
    17                         echo $file."<br>";
    18                     }
    19                 }
    20             }
    21             closedir($obj);
    22         }
    23     }
    24 }
    25 //测试:遍历当前目录
    26 traverseDir(".");
    27 ?>
  • 相关阅读:
    发布(Windows)
    Parallel并行编程
    query通用开源框架
    深入了解三种针对文件(JSON、XML与INI)的配置源
    GitLab CI
    雅思创始人Keith Taylor谈英语学习
    查看内存使用情况
    Reverse String
    分布式消息系统jafka快速起步(转)
    深入浅出 消息队列 ActiveMQ(转)
  • 原文地址:https://www.cnblogs.com/CheeseZH/p/4560602.html
Copyright © 2011-2022 走看看