PHP - Glob 多个文件扩展名仅显示列出的第一个扩展名

标签 php glob

我的目录中有 jpg 和 gif 图像,我正在尝试显示它们。

但是,下面只会显示gif:

$pictures = glob("images/*.{gif,jpg}", GLOB_BRACE); 

下面这个只会显示jpg:

$pictures = glob("images/*.{jpg,gif}", GLOB_BRACE);

这是我正在处理的全部内容:

<?php
$pictures = glob("images/*.{gif,jpg}", GLOB_BRACE); 
for( $i=0; $i<=10; $i++ ){ 
echo "<img src=\"".$pictures[$i]."\" />"; 
}  
?>

我也尝试过使用绝对路径,但没有那么幸运地显示两者。 可能是什么问题?

提前致谢。

最佳答案

您似乎将搜索限制为前 10 个匹配项。如果每个超过十个,那么您将按照您指定的顺序获取它们(因为它们是按查找方式排序,而不是按字母顺序排序)。

您可以使用 foreach 循环遍历所有文件,也可以在循环之前添加 sort($pictures)

关于PHP - Glob 多个文件扩展名仅显示列出的第一个扩展名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14008191/

相关文章:

javascript - 如何在单击超链接时在 session 中设置 PHP 对象

bash - shell glob 扩展如何像 ls -l * 一样工作?

python - 如何在 Python 中合并多个具有不同表列的 Excel 工作表?

javascript - 代码点火器+ Angular Js : How to use partials?

php - 如何向网页访问者推送警报或消息?

php - 我是否应该对 PHP 访问说明符应用与 Java 说明符相同的做法?

php - 如何使 url 未经授权 - laravel

zsh - 令人困惑的 ZSH glob

php - 获取子文件夹的数量

java - Java 路径中的星号