脚本宝典收集整理的这篇文章主要介绍了PHP递归文件夹扫描到多个数组(子文件夹和文件),脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我有以下开始代码,它基本上扫描包含文件的每个子文件夹,然后丢失以使其现在进入多数组.
$dir = 'data/uploads/farbmuster'; $results = array(); if(is_dir($dir)) { $ITerator = new Recursivedirectoryiterator($dir); foreach(new RecursiveiteratorIterator($iterator,RecursiveIteratorIterator::CHILD_First) as $file) { if($file->isFile()) { $thispath = str_replace('\\','/',$file->getPath()); $thisfile = utf8_encode($file->getFilename()); $results[] = 'path: ' . $thispath. ',filename: ' . $thisfile; } } }
有人可以帮我弄这个吗?
提前致谢!
$dir = 'test/'; $results = array(); if (is_dir($dir)) { $iterator = new RecursiveDirectoryIterator($dir); foreach ( new RecursiveIteratorIterator($iterator,RecursiveIteratorIterator::CHILD_FIRST) as $file ) { if ($file->isFile()) { $thispath = str_replace('\\',$file); $thisfile = utf8_encode($file->getFilename()); $results = array_merge_recursive($results,pathToArray($thispath)); } } } echo "<PRe>"; print_r($results);
产量
Array ( [test] => Array ( [css] => Array ( [0] => a.css [1] => b.css [2] => c.css [3] => css.PHP [4] => css.run.PHP ) [CSV] => Array ( [0] => abc.csv ) [image] => Array ( [0] => a.jpg [1] => ab.jpg [2] => a_rgb_0.jpg [3] => a_rgb_1.jpg [4] => a_rgb_2.jpg [5] => f.jpg ) [img] => Array ( [users] => Array ( [0] => a.jpg [1] => a_rgb_0.jpg ) ) )
使用的功能
function pathToArray($path,$separator = '/') { if (($pos = strpos($path,$separator)) === false) { return array($path); } return array(substr($path,$pos) => pathToArray(substr($path,$pos + 1))); }
以上是脚本宝典为你收集整理的PHP递归文件夹扫描到多个数组(子文件夹和文件)全部内容,希望文章能够帮你解决PHP递归文件夹扫描到多个数组(子文件夹和文件)所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。