使用 PHP 显示图像列表

Showing a list of images using PHP

我有一个目录,其中包含几个带有图像的文件夹。我想要做的是使用 php 脚本读取所有图像并在浏览器中用 div 显示它们。我尝试实现的代码如下:

<?php

function listFolderFiles($dir) 
{
    echo '<ol>';
    foreach (new DirectoryIterator($dir) as $folder) {
        if (!$folder->isDot()) {
            // echo '<li>' . $folder->getFilename() . '<br>';
            if ($folder->isDir()) {
                $user = $dir . '/' . $folder;
                foreach (new DirectoryIterator($user) as $file) {
                    if ($file != '.' && $file != '..') {
                        // echo '<li>' . $file->getFilename();
                        $image = $user . '/' . $file;

                        echo $image . '<br>'; 

                        echo '<div>';
                        echo '<img src="' . $image . '" width="500" height="500" alt="'; 
                        echo '"/>';
                        echo '</div>';
                    }
                }
            }
            echo '</li>';
        }
    }
    echo '</ol>';
}

listFolderFiles('images');

命令echo $image.'<br>';打印所有图像的名称。使用以下命令,我设法创建了 div,但是其中没有显示图像:

echo '<div>';
echo '<img src="' . $image . '" width="500" height="500" alt="';
echo '"/>';
echo '</div>';

我是不是做错了什么? $image 路径是正确的。 编辑:我将图像文件夹移动到与 wamp 文件夹中的 php 文件相同的文件夹中。现在例如图像文件如下images/01virarias/1_.jpg。我将函数调用更改为 listFolderFiles('images');。但是我得到了同样的空 divs.

如果您的路径正确,请在您的浏览器上检查元素,我认为这是引用问题,请尝试

echo '<img src="'. $image .'" width="500" height="500" alt=""/>';

您可以使用图片路径 relative/absolute 喜欢

relative :- ../images/your_image
absolute :-  http://localhost/your_image_path

您需要使用 URL。看来您正在使用本地文件。你的浏览器是'problem'。虽然这是安全问题。

图片应该在你的服务器环境中。

您似乎忘记了 <li> 开始标记。