我想要一个目录($path)中的图像列表。我想对文件扩展名进行不区分大小写的研究。下面的代码在 Linux 上运行良好,但在 Windows 上运行良好。
foreach ( glob("$path/{*.[jJ][pP][gG],*.[jJ][pP][eE][gG],*.[gG][iI][fF],*.[pP][nN][gG],*.[bB][mM][pP],*.[tT][iI][fF][fF]}", GLOB_BRACE | GLOB_NOCHECK ) as $file ) {
echo $file;
}
我添加了 GLOB_NOCHECK 标志来查看计算的模式。这是回应:
fotogallery/dir/[gG]
fotogallery/dir/[gG]
fotogallery/dir/[fF]
fotogallery/dir/[gG]
fotogallery/dir/[pP]
fotogallery/dir/[fF]
似乎只考虑了每个逗号分隔表达式的最后一个范围([...])!为什么会发生这种情况?
谢谢!:-)