php如何获取目录下所有文件名

Posted

tags:

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

php里有没有这样的函数,调用第一次返回目录的第一个文件名,第二次返回第二个。。。以此类推。有点像逐行读取文件。
如果有,告诉我怎么用。如果没有,给我写一个,谢谢!

<?php
 function filesinfo($path)
  //检查路径合法性
  if(!is_dir($path)) return false; //不合法
  //用系统函数获得文件名数组
  $files=scandir($path);
  //定义静态变量记录调用次数
  static $count=-1;
  //遍历数组
  foreach($files as $file)
   //如果是 '.' 或 '..' 文件,跳过当次循环
   if($file=='.' || $file=='..') continue;
   //将文件信息存入数组
   $arr[]=iconv('gbk','utf-8',$file);
  
  //每次调用,次数加1
  $count += 1;
  //根据调用次数返回第N个结果
  return $arr[$count];
 
 //第1次调用,./ 替换成你自己的目录路径
 echo filesinfo('./') . '</br>';
 //第2次调用
 echo filesinfo('./') . '</br>';
 //第3次调用
 echo filesinfo('./') . '</br>';
?>

参考技术A 自己百度

PHP 获取指定目录下所有文件(包含子目录)

PHP 获取指定目录下所有文件(包含子目录)

//glob — 寻找与模式匹配的文件路径 
$filter_dir = array(‘CVS‘, ‘templates_c‘, ‘log‘, ‘img‘, ‘config‘, ‘css‘, ‘js‘);

function get_file_list($dir)
{
	global $filter_dir;
	
	$file_list = array();
	$file_dir_list = array();
	
	$dir_list = scandir($dir);
	
	foreach ($dir_list as $r)
	{
		if ($r == ‘.‘ || $r == ‘..‘ || in_array($r, $filter_dir))
		{
			continue;
		}
		$new_dir = $dir . ‘\\‘ . $r;
		if (is_dir($new_dir))
		{
			$file_dir = get_file_list($new_dir);
			$file_dir_list = array_merge($file_dir_list, $file_dir);
		}
		else
		{
			$file_list[] = $new_dir;
		}
	}
	
	return array_merge($file_list, $file_dir_list);
}

$file_list = get_file_list(‘.‘);

foreach ($file_list as $r)
{
	echo md5_file($r) . ‘ => ‘ . $r . ‘<br>‘;
	//echo $r . ‘<br>‘;
}

  

以上是关于php如何获取目录下所有文件名的主要内容,如果未能解决你的问题,请参考以下文章

如何快速获取Flutter安装目录

如何在MATLAB中获取特定目录下的所有文件?

Linux 上如何仅获取一级子目录的大小?

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

php 遍历文件夹文件问题

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