2014-10-01 101 views
1

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

下面的代码我>>>

<?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>"; 

?> 

之前曾与该代码的只能说明这是在“图片文件夹中的文件,它不会从子目录获取文件。

请帮助..谢谢推进..!

+0

看一看http://php.net/manual/en/class.directoryiterator.php用来捕获,@meda – 2014-10-01 05:50:18

回答

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; 
} 
+0

感谢。 :) – TML 2014-10-01 05:56:10

+0

欢迎,你也有我的投票! – meda 2014-10-01 05:57:06