我试图将硬盘上的某些文件夹放入阵列中。
例如,度假图片。假设我们具有以下结构:
我想要像这样的东西作为数组。 意思是我有1个大数组,在那个数组中有更多数组。每个集合和子集都有自己的数组。
我正在尝试使其看起来像这样:
Array ( [Set 1] => Array([0] => Item 1 of Set 1, [1] => Item 1 of Set 1,...) [Set 2] => Array([Subnet 1] => Array([0] => Item 1 of Subset 1 of Set 2,[1] => ...), [Subnet 2] => Array([0] => ..., ..., ...), ..., [0] => Random File) [set 3] => Array(...) ... )
我碰到了这个:http : //www.the-art-of- web.com/php/dirlist/
但这不是我想要的。我一直在干预它,但是它给我带来的只有麻烦。
这是一个示例,查看更大分辨率的源代码(显然没有单击…)。
我建议使用DirectoryIterator构建阵列
这是我快速汇总的一个片段,但是我目前没有可以对其进行测试的环境,因此请准备对其进行调试。
$fileData = fillArrayWithFileNodes( new DirectoryIterator( '/path/to/root/' ) ); function fillArrayWithFileNodes( DirectoryIterator $dir ) { $data = array(); foreach ( $dir as $node ) { if ( $node->isDir() && !$node->isDot() ) { $data[$node->getFilename()] = fillArrayWithFileNodes( new DirectoryIterator( $node->getPathname() ) ); } else if ( $node->isFile() ) { $data[] = $node->getFilename(); } } return $data; }