簡體   English   中英

從多個目錄中提取所有圖像並使用PHP顯示它們

[英]Pull all images from multiple directories and display them with PHP

我的服務器上有一個名為“ images”的文件夾,在該文件夾中,我可以有一個文件夾,最多可以包含10個包含圖像的文件夾。

而不是為每個圖像編寫標簽

<img src="images/people/001.jpg">
<img src="images/landscape/001.jpg">

我可以使用PHP獲取主目錄“圖像”中所有文件夾中的所有圖像嗎?

我對PHP的經驗很少,所以這是我一直在努力的事情。

我需要php返回“ <div class="box"><img src="images/FOLDER/IMAGENAME.jpg"></div><div class="box"><img src="images/FOLDER/IMAGENAME.jpg"></div>

也許有人可以幫忙。

function ListFiles($dir) {
    if($dh = opendir($dir)) {
        $files = Array();
        $inner_files = Array();
        while($file = readdir($dh)) {
            if($file != "." && $file != ".." && $file[0] != '.') {
                if(is_dir($dir . "/" . $file)) {
                    $inner_files = ListFiles($dir . "/" . $file);
                    if(is_array($inner_files)) $files = array_merge($files, $inner_files); 
                } else {
                    array_push($files, $dir . "/" . $file);
                }
            }
        }
        closedir($dh);
        return $files;
    }
}
foreach (ListFiles('/path/to/images') as $key=>$file){
    echo "<div class=\"box\"><img src=\"$file\"/></div>";
}

像這樣嗎

更簡單的解決方案。 您可以使用內置的glob函數。 假設您所有的圖片都是.jpg

$result = array();
$dir    = 'images/';

foreach(glob($dir.'*.jpg') as $filename) {
    $result[] = "<div class=\"box\"><img src=\"$filename\"></div>";
}

然后,您可以回顯$result每個元素或所需的任何內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM