PHP从子目录中获取图像

时间:2014-10-01 05:45:35

标签: php scandir

我之前有以下代码从特定文件夹中获取图像。 现在我想从多个文件夹中获取单个页面上的图像 我有文件夹名称为"图像"而不是内部"图像"文件夹我有folderOne,folderTwo,folderThree .. .jpg文件只在这些子文件夹

我之前的代码>>>

<?php

    function scd($dir)  
    {$files = scandir($dir);

    asort($files);
    return $files;
    }   

    $output = '<div> ';
    $dir = "images";
    $files = scd($dir);
    foreach($files as $file){
    shuffle($files);
    if($file==='.' || $file==='...'){continue;}

    $output.='<img src="'.$dir.'/'.$file.' " />';
        }
        echo $output. "</div>";

?>

使用此代码,它只显示位于&#34; images文件夹中的文件,并且不会从子目录中获取文件。

请帮助..谢谢提前......!

1 个答案:

答案 0 :(得分:3)

我个人建议RecursiveDirectoryIterator而不是scandir()

<?php

function scd($path) {
    $di = new RecursiveDirectoryIterator($path);
    $iterator = new RecursiveIteratorIterator($di, RecursiveIteratorIterator::CHILD_FIRST);

    $files = [];
    foreach ($iterator as $file) {
        $files[] = $file;
    }

    asort($files);
    return $files;
}