我试图从php文件夹中获取所有图像。它工作得很好。现在我想检查某个图像是否存在,如果存在则不显示。
这是我的基本代码与工作良好:
foreach (glob("Bilder/Spectrum/*.png") as $filename) {
$filenameDienst = explode("_", $filename);
echo "<a href='Dienste?d=".$filenameDienst[1]."#tabs-2'> <img class='loopimage' src='".$filename."'> </a>";
}
现在我想检查图像名称"MB_default_Spectrum.png",如果它存在,不要显示它。
我已经试过了:
foreach (glob("Bilder/Spectrum/*.png") as $filename) {
$filenameDienst = explode("_", $filename);
if ($filename != "MB_default_Spectrum.png") {
echo "<a href='Dienste?d=".$filenameDienst[1]."#tabs-2'> <img class='loopimage' src='".$filename."'> </a>";
}
}
但它没有工作…它还在显示。这里出了什么问题?由于
glob
返回与给定模式匹配的路径数组,而不仅仅是文件名。看看你的代码,条件应该是:
if ($filename != "Bilder/Spectrum/MB_default_Spectrum.png")
另外,我个人更喜欢下面的代码(我觉得它更简洁):
$results = glob('path/to/dir/*.png');
foreach ($results as $filename)
// Skip specific file
if ($filename === 'path/to/dir/secretNuclearLaunchCodesAsImage.png')
continue;
echo $filename
}