遍历目录,结果存入数组。支持php4及以上。php5以后可用scandir()函数代替while循环。
		
		<?php
		/**
		* @param string $dir
		* @return array
		*/
		function my_scandir($dir)
		{
		$files = array();
		if ( $handle = opendir($dir) ) {
		while ( ($file = readdir($handle)) !== false )
		{
		if ( $file != ".." && $file != "." )
		{
		if ( is_dir($dir . "/" . $file) )
		{
		$files[$file] = my_scandir($dir . "/" . $file);
		}
		else
		{
		$files[] = $file;
		}
		}
		}
		closedir($handle);
		return $files;
		}
		}
		function my_scandir1($dir)
		{
		$files = array();
		$dir_list = scandir($dir);
		foreach($dir_list as $file)
		{
		if ( $file != ".." && $file != "." )
		{
		if ( is_dir($dir . "/" . $file) )
		{
		$files[$file] = my_scandir1($dir . "/" . $file);
		}
		else
		{
		$files[] = $file;
		}
		}
		}
		return $files;
		}
		$result = my_scandir('./');
		$result = my_scandir1('./');
		?>
另一个实现方法
function fetchDir($dir) {
foreach(glob($dir.'\\*') as $file) {
echo $file,"\\n";
if(is_dir($file)) {
fetchDir($file);
}
}
}
fetchDir("D:\\wamp\\www\\any");
还可以把‘\\*', 换成 DIRECTORY_SEPARATOR.'*' ,把‘\\n'换成PHP_EOL ,这样可以跨平台了。
相关文章
- 64M VPS建站:怎样选择合适的域名和SSL证书? 2025-06-10
 - 64M VPS建站:怎样优化以提高网站加载速度? 2025-06-10
 - 64M VPS建站:是否适合初学者操作和管理? 2025-06-10
 - ASP.NET自助建站系统中的用户注册和登录功能定制方法 2025-06-10
 - ASP.NET自助建站系统的域名绑定与解析教程 2025-06-10
 
        
    		
            	
        
        