广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >怎么在PHP中获取目录中的全部内容
  • 501
分享到

怎么在PHP中获取目录中的全部内容

2023-06-15 07:06:39 501人浏览 泡泡鱼
摘要

怎么在PHP中获取目录中的全部内容?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。$path = $argv[1];// 获取目录下

怎么在PHP中获取目录中的全部内容?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

$path = $argv[1];// 获取目录下所有内容$dirs = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path), RecursiveIteratorIterator::SELF_FIRST);foreach($dirs as $k=>$d){    echo 'key:'. $k, php_EOL;    if($d->isDir()){        echo $d->getPathname(), PHP_EOL;    }else{        echo $d->getFilename(), PHP_EOL;    }}//执行 php PHP获取目录中的全部内容RecursiveDirectoryIterator.php ../// key:../.// ../.// key:../..// ../..// key:../source// ../source// key:../source/.// ../source/.// key:../source/..// ../source/..// key:../source/PHP获取目录中的全部内容RecursiveDirectoryIterator.php// PHP获取目录中的全部内容RecursiveDirectoryIterator.php// key:../source/PHP大文件读取操作.php// PHP大文件读取操作.php// key:../PHP大文件读取操作.md// PHP大文件读取操作.md// key:../PHP获取目录中的全部内容RecursiveDirectoryIterator.md// PHP获取目录中的全部内容RecursiveDirectoryIterator.md

其实就一行代码,然后直接循环输出这个迭代器。从结果中我们可以看出,先进入 source 目录遍历完成后再遍历外部的文件内容,按照目录、文件名的顺序依次获取了目录下的所有内容。是不是比我们自己写递归函数要方便很多。

如果我们想获取目录下的所有PHP文件,并且计算他们的文件总大小呢?使用这一套迭代器操作也可以非常简单的完成,我们只需要增加一个正则迭代器对前面的迭代器内容进行一下过滤就好了:

// 获取所有php文件$regits = new RegexIterator($dirs, '/^.+\.php$/i');$fileSize = 0;foreach($regIts as $k=>$p){    echo $p->getSize() . ' ' .  $k, PHP_EOL;    $fileSize += $p->getSize();}echo 'Total ', $fileSize, PHP_EOL;// 622 ../source/PHP获取目录中的全部内容RecursiveDirectoryIterator.php// 869 ../source/PHP大文件读取操作.php// Total 1491

感觉就和 ls -l 一样,可以方便的让我们能够进行目录下的相关操作。这个类的使用就简单的介绍到这里,关于SPL库中还有许多值得我们探索的能力,慢慢学习慢慢实践,不断提升我们面向优雅编程的能力。

测试代码:

https://GitHub.com/zhangyue0503/dev-blog/blob/master/php/202003/source/PHP%E8%8E%B7%E5%8F%96%E7%9B%AE%E5%BD%95%E4%B8%AD%E7%9A%84%E5%85%A8%E9%83%A8%E5%86%85%E5%AE%B9RecursiveDirectoryIterator.php

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注编程网PHP编程频道,感谢您对编程网的支持。

--结束END--

本文标题: 怎么在PHP中获取目录中的全部内容

本文链接: https://www.lsjlt.com/news/278798.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 怎么在PHP中获取目录中的全部内容
    怎么在PHP中获取目录中的全部内容?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。$path = $argv[1];// 获取目录下...
    99+
    2023-06-15
  • PHP中怎样获取目录中的文件名
    PHP中怎样获取目录中的文件名,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。我们来看一下PHP中怎样去获取目录下的文件相关知识。我们已经了解了在PHP中怎样去打开和关闭目录,在...
    99+
    2023-06-25
  • php怎么遍历指定目录中的内容
    这篇文章主要介绍“php怎么遍历指定目录中的内容”,在日常操作中,相信很多人在php怎么遍历指定目录中的内容问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php怎么遍历指定目...
    99+
    2022-10-19
  • MySQL中怎么访问内部安全数据目录
    这篇文章将为大家详细讲解有关MySQL中怎么访问内部安全数据目录,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。 ◆为什么说安全性是重要的,应该警惕...
    99+
    2022-10-18
  • 怎么在python中获取字符串的指定内容
    这篇文章给大家介绍怎么在python中获取字符串的指定内容,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。python的五大特点是什么python的五大特点:1.简单易学,开发程序时,专注的是解决问题,而不是搞明白语言本...
    99+
    2023-06-14
  • vue中怎么获取dom元素中的内容
    vue中获取dom元素中内容的方法:vue中是通过给标签加ref属性,然后在js中利用ref去引用它,从而操作该dom元素。示例:<template>  <div>  &nbs...
    99+
    2022-10-07
  • Shell中怎么获取数组的全部索引
    这篇文章主要介绍“Shell中怎么获取数组的全部索引”,在日常操作中,相信很多人在Shell中怎么获取数组的全部索引问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Shell中怎么获取数组的全部索引”的疑惑有所...
    99+
    2023-06-02
  • VBS中怎么获取GZIP压缩的HTTP内容
    VBS中怎么获取GZIP压缩的HTTP内容,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。不同组件对GZIP压缩的处理不尽相同,首先看Msxml2.XMLHTTP:'By...
    99+
    2023-06-08
  • java项目中的字节码文件的相关内容怎么样获取
    这篇文章给大家介绍java项目中的字节码文件的相关内容怎么样获取,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。java 中如何获取字节码文件的相关内容反射机制是指在运行状态中,对任意一个类(class文件),都能知道这...
    99+
    2023-05-31
    java 字节码 ava
  • Shell中中怎么获取脚本目录的绝对路径
    Shell中中怎么获取脚本目录的绝对路径,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。要得到正在执行的程序/脚本自身所存放的绝对路径,在 PHP 里面可以用 dirname...
    99+
    2023-06-09
  • 利用Java怎么获取文本框中的内容
    利用Java怎么获取文本框中的内容?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。具体代码如下:import java.io.*;import javax.swing.*;imp...
    99+
    2023-05-31
    java ava
  • vbs 中怎么获取当前目录的文件数量
    这篇文章将为大家详细讲解有关vbs 中怎么获取当前目录的文件数量,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。i=0set fso=CreateObject("Scrip...
    99+
    2023-06-08
  • php获取输入内容中文不显示不出来怎么办
    本教程操作环境:Windows7系统、PHP8.1版、Dell G3电脑。php获取输入内容中文不显示不出来怎么办?php fgetcsv读取文件内容,但是中文部分总是无法显示解决方法在使用fgetcsv读取文件内容,但是中文部分总是无法显...
    99+
    2022-11-21
    php
  • 怎么在asp.net项目中获取html标签的值
    今天就跟大家聊聊有关怎么在asp.net项目中获取html标签的值,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。html有什么特点1、简易性:超级文本标记语言版本升级采用超集方式,从...
    99+
    2023-06-06
  • 在vue项目中怎么获取视频的时长
    这篇文章主要讲解了“在vue项目中怎么获取视频的时长”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“在vue项目中怎么获取视频的时长”吧!vue获取视频时长传入参数为视频文件对象js的代码如下...
    99+
    2023-06-29
  • MySQL中怎么重定位数据库目录的内容
    今天就跟大家聊聊有关MySQL中怎么重定位数据库目录的内容,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。◆MySQL 允许您重定位其中的数据目录或元...
    99+
    2022-10-18
  • CSS在注释内容中怎么替换内部的虚线
    今天小编给大家分享一下CSS在注释内容中怎么替换内部的虚线的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起...
    99+
    2022-10-19
  • 怎么在docker中查看容器的挂载目录
    这篇文章将为大家详细讲解有关怎么在docker中查看容器的挂载目录,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。方法一docker inspect -f &qu...
    99+
    2023-06-14
  • MSSQL数据库中怎么获取TEXT字段的内容长度
    这篇文章将为大家详细讲解有关MSSQL数据库中怎么获取TEXT字段的内容长度,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。DATALENGTH用来返回任何表...
    99+
    2022-10-18
  • linux中怎么将目录下的脚本一次性全部执行
    这篇文章主要为大家展示了“linux中怎么将目录下的脚本一次性全部执行”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“linux中怎么将目录下的脚本一次性全部执行”这篇文章吧。1. run-par...
    99+
    2023-06-16
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作