-2

我正在使用 PHP 获取目录中的所有图像,但我正在寻找一种方法来避免为此创建多个函数。我的代码如下所示:

function getAllImages() {
    $dir = "images/work/*";  
    foreach(glob($dir) as $file)  
    {  
        echo '<img src="'.$file.'">';
    }  
}

我在外部文件中调用函数

getAllImages();

事情是;这些文件需要位于“work”目录的子文件夹中,因此基本上一个子目录可以是images/work/project1,其中包含名为“project1”的项目的图像。

我这样做的简单方法是创建多个函数,如“getAllImagesProject1”等,但我想要以某种方式使用参数(或类似的东西)来访问子目录,例如

getAllImages('project1');

我无论如何都不是代码向导,所以如果有人知道如何让它工作,我会很高兴!谢谢您阅读此篇!

4

2 回答 2

1

也许你应该试试这个:

function getAllImages($directory) {
    $dir = "images/work/{$directory}/*";  
    foreach(glob($dir) as $file)  
    {  
        echo '<img src="'.$file.'">';
    }  
}
于 2013-02-24T19:19:51.383 回答
1

我认为您还应该在输出图像之前对其进行验证

function getAllImages($path) {
    $it = new FilesystemIterator($path, FilesystemIterator::SKIP_DOTS);
    $it = new RegexIterator($it, '#\.(gif|png|jpg|jpeg)$#i');
    foreach ( $it as $img )
        @getimagesize($img) and printf("<img src='%s' />", $img);
}
于 2013-02-24T19:36:48.447 回答