【发布时间】:2020-07-16 06:51:09
【问题描述】:
我有这个 foreach 用于检索子目录和文件,然后将它们存储在一个数组中,我正在使用 RecursiveDirectoryIterator 但我愿意使用任何其他可以解决我的问题的方法:
$it = new RecursiveDirectoryIterator($path);
foreach(new RecursiveIteratorIterator($it) as $file){
if ($file->getExtension() == 'jpg'){
$folder = ltrim($file->getPath(), $path."/");
$images[] = array("cod" => $folder, "images" => $file->getFilename());
}
}
输出是:
array(294) {
[0]=>
array(2) {
["cod"]=>
string(5) "8322C"
["images"]=>
string(36) "8322c-pastillas-del-sedona0-12-2.jpg"
}
[1]=>
array(2) {
["cod"]=>
string(5) "8322C"
["images"]=>
string(36) "8322c-pastillas-del-sedona0-12-1.jpg"
}
[2]=>
array(2) {
["cod"]=>
string(5) "7877C"
["images"]=>
string(29) "7877c-pastillas-4runner-2.jpg"
}
[3]=>
array(2) {
["cod"]=>
string(5) "7877C"
["images"]=>
string(29) "7877c-pastillas-4runner-1.jpg"
}
[4]=>
array(2) {
["cod"]=>
string(9) "D889-7767"
["images"]=>
string(30) "pastilla-spectra-rio-bex-1.jpg"
}
...
所以我想要实现的是不重复变量cod(在这种情况下是目录),所以它看起来像:
array(294) {
[0]=>
array(2) {
["cod"]=>
string(5) "8322C"
["images"]=>
string(74) "8322c-pastillas-del-sedona0-12-1.jpg, 8322c-pastillas-del-sedona0-12-2.jpg"
}
[1]=>
array(2) {
["cod"]=>
string(5) "7877C"
["images"]=>
string(60) "7877c-pastillas-4runner-1.jpg, 7877c-pastillas-4runner-2.jpg"
}
[3]=>
array(2) {
["cod"]=>
string(9) "D889-7767"
["images"]=>
string(30) "pastilla-spectra-rio-bex-1.jpg"
}
...
你能帮帮我吗? 这可能吗?
【问题讨论】: