美文网首页
12.2.2 遍历目录

12.2.2 遍历目录

作者: 曹渊说创业 | 来源:发表于2016-12-22 08:45 被阅读82次

12.2.2 遍历目录

opendir -- 打开目录句柄
语法:resource opendir ( string path [, resource context] )
打开一个目录句柄,可用于之后的 closedir(),readdir() 和 rewinddir() 调用中。
readdir -- 从目录句柄中读取条目
语法:string readdir ( resource dir_handle )
返回当前目录指针位置的文件名,没有返回false,并将指针向下移动一位。文件名以在文件系统中的排序返回。
closedir -- 关闭目录句柄
语法:void closedir ( resource dir_handle )
关闭由 dir_handle 指定的目录流。流必须之前被 opendir() 所打开。
rewinddir -- 倒回目录句柄
语法:void rewinddir ( resource dir_handle )
将 dir_handle 指定的目录流重置到目录的开头。

<?php //遍历指定目录实例
    $num=0;                                 //用来统计子目录和文件的个数
    $dirname='phpMyAdmin';              //定义一个目录名
    $dir_handle=opendir($dirname);      //用opendir打开目录
    //将遍历的目录和文件名使用表格格式输出
    while($file=readdir($dir_handle)) {     //使用readdir循环读取目录里的内容
        $dirFile=$dirname."/".$file;            //追加目录名
        echo "文件名: ".$file." | ";                   //显示文件名
        echo "大小: ".filesize($dirFile)." | ";         //显示文件大小
        echo "类型: ".filetype($dirFile)." | ";         //显示文件类型
        echo "创建时间: ".date("Y/n/t",filectime($dirFile))."<br/>";
        num++;
    }
    closedir($dir_handle);          //关闭文件操作句柄
    echo ‘在<b>’.$dirname.‘</b>目录下共有文件<b>'.$num.'</b>个';

glob.php

<?php
    foreach(glob("phpmyadmin/*") as $filename ) {
        echo $filename."<br>";
    }

test.php

<?php
    //打开目录资源
    $dir = opendir("phpmyadmin");

    while($filename = readdir($dir)) {
        //不要操作.和..
        if($filename!="." && $filename!="..") {
            //一定要注意路径, 找对才可以
            $filename = "./phpmyadmin/".$filename;

            if(is_dir($filename)) {
                echo "目录:".$filename."<br>";
            } else {

                echo "文件:".$filename."<br>";
            }
        }
        
    }

    rewinddir($dir);
    echo "@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@<br>";

    while($filename = readdir($dir)) {
        //不要操作.和..
        if($filename!="." && $filename!="..") {
            //一定要注意路径, 找对才可以
            $filename = "./phpmyadmin/".$filename;

            if(is_dir($filename)) {
                echo "目录:".$filename."<br>";
            } else {

                echo "文件:".$filename."<br>";
            }
        }
        
    }
    //关闭这个资源
    closedir($dir);

相关文章

  • 12.2.2 遍历目录

    12.2.2 遍历目录 opendir -- 打开目录句柄语法:resource opendir ( string...

  • Go遍历文件树

    filepath.Walk 遍历目录下的所有文件,包括子目录下的文件 "." 要遍历的目录 path 遍历目录中元...

  • 目录遍历

    Directory traversal / File include (有区别/没区别) 目录遍历/文件包含目录遍...

  • 目录遍历

    ../../../../../../../../../../../../../../../etc/passwd ....

  • 目录遍历

    介绍 目录遍历(路径遍历)是由于web服务器配置错误,或者web应用程序对用户输入的文件名称的安全性验证不足而导致...

  • 遍历目录

    利用fs提供的readdir方法,可以很方便的读取目录,在回调函数中会返回一个数组,存放的是文件名。我们可以遍历这...

  • 二十一、手动漏洞挖掘(4)目录遍历/文件包含

    1、区别 目录遍历:Directory traversal目录遍历:指除浏览web本目录外,能够浏览web目录外的...

  • 漏洞挖掘之目录遍历漏洞

    从0到1完全掌握目录遍历漏洞 0x01 什么是目录遍历漏洞 目录遍历漏洞是由于网站存在配置缺陷,导致网站目录可以被...

  • python 遍历目录

    递归遍历所有目录 输出: 仅遍历当前目录 输出: 文件名匹配 输出:

  • Python: os模块实例详解

    Python基础文章集合请移步。 操作文件 改变目录 遍历目录listdir 遍历os.walk 增删目录 单层目...

网友评论

      本文标题:12.2.2 遍历目录

      本文链接:https://www.haomeiwen.com/subject/qyucvttx.html