源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

php遍历文件夹下的所有文件和子文件夹示例

  • 时间:2022-11-25 21:03 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:php遍历文件夹下的所有文件和子文件夹示例
遍历目录,结果存入数组。支持php4及以上。php5以后可用scandir()函数代替while循环。
[u]复制代码[/u] 代码如下:
<?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('./'); ?>
另一个实现方法
[u]复制代码[/u] 代码如下:
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 ,这样可以跨平台了。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部