我试图用一些例外/忽略来回显文件夹目录中的所有图像。
除了它之外它还能正常工作还能回显出它回显的每张照片的空白照片吗? 为什么会发生这种情况有人请告诉我我哪里出错了谢谢。
<?php
$dirname = "./data/photos/".$profile_id."/";
$images = scandir($dirname);
$ignore = Array("_cover.jpg", "_default.jpg");
foreach($images as $curimg){
if(!in_array($curimg, $ignore)) {
echo "<img src='./data/photos/".$profile_id."/$curimg'/ class=\"profile_photos\"><br>\n";
};
}
?>
答案 0 :(得分:0)
您的图像来源后似乎有一个额外的斜杠:
echo "<img src='./data/photos/".$profile_id."/$curimg'/ class=\"profile_photos\"><br>\n";
//--------------------------------------------------------^ here
这可能会干扰浏览器解析DOM并导致出现额外图像。
另外,小建议,请尝试使用此行:
echo "<img src='".$dirname.$curimg."' class=\"profile_photos\"><br>\n";
答案 1 :(得分:0)
您应确保$curimg
实际上是jpg文件:
if(!in_array($curimg, $ignore) && preg_match("/\.jpg$/i", $curimg)) {
scandir
不仅返回文件,还返回子目录,包括.
和..
。