PHP如何读出当前目录下所有文件?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP如何读出当前目录下所有文件?相关的知识,希望对你有一定的参考价值。

参考技术A   一般来说php中读取目录下的文件名的方式确实不少,最简单的是scandir,具体代码如下:\\x0d\\x0a  复制代码 代码如下:$dir="./caxa/";\\x0d\\x0a  $file=scandir($dir);\\x0d\\x0a  print_r($file);\\x0d\\x0a  稍微复杂点的,来自于php手册:\\x0d\\x0a  复制代码 代码如下:$dir = "/etc/php5/";\\x0d\\x0a  // Open a known directory, and proceed to read its contents\\x0d\\x0a  if (is_dir($dir)) \\x0d\\x0a  if ($dh = opendir($dir)) \\x0d\\x0a  while (($file = readdir($dh)) !== false) \\x0d\\x0a  echo "filename: $file : filetype: " . filetype($dir . $file) . "\n";\\x0d\\x0a   closedir($dh);\\x0d\\x0a  \\x0d\\x0a  \\x0d\\x0a  这些都只能读取当前指定目录下的文件,对子目录中的文件则无法读取。原来自己写过一个循环删除所有目录的一段代码,需要逐个子目录删除所有文件,包括多层。但是只需要读出文件名,稍微复杂点,网上找到一个能用,原始代码有错误提示,改了一下引用&$data的地方,如下所示:\\x0d\\x0a  复制代码 代码如下:function searchDir($path,&$data)\\x0d\\x0a  if(is_dir($path))\\x0d\\x0a  $dp=dir($path);\\x0d\\x0a  while($file=$dp->read())\\x0d\\x0a  if($file!=\'.\'&& $file!=\'..\')\\x0d\\x0a  searchDir($path.\'/\'.$file,$data);\\x0d\\x0a  \\x0d\\x0a  \\x0d\\x0a  $dp->close();\\x0d\\x0a  \\x0d\\x0a  if(is_file($path))\\x0d\\x0a  $data[]=$path;\\x0d\\x0a  \\x0d\\x0a  \\x0d\\x0a  function getDir($dir)\\x0d\\x0a  $data=array();\\x0d\\x0a  searchDir($dir,$data);\\x0d\\x0a  return $data;\\x0d\\x0a  \\x0d\\x0a  print_r(getDir(\'.\'));\\x0d\\x0a  希望本文所述对大家的PHP程序设计有所帮助。

以上是关于PHP如何读出当前目录下所有文件?的主要内容,如果未能解决你的问题,请参考以下文章

PHP删除当前目录及其目录下的所有文件

请问php如何修改要下载的文件夹的路径啊啊?教程是下载当前目录下的文件夹,我想指定到E:/model/B1

php 获取当前目录所有文件夹名 及下级目录文件夹名 求代码详解

如何拷贝文件到当前目录

如何快速获取Flutter安装目录

php列出目录下所有文件(包括子目录)