检查图像文件名是否存在php循环

时间:2016-06-16 00:05:48

标签: php image loops

我的根文件夹/images/filename.here上有多个图片。图片文件名就像这样(电子邮件):me@yahoo.jpgme@yahoo_1.jpgme@yahoo_2.jpgyou@gmail.jpg

我的代码仅显示用户的一个图像me@yahoo.jpgyou@gmail.jpg

<? 
$email= $data['payment']['email'];
$receipts = "images/".$email;
     if (file_exists($receipts)) { ?>
                <img src="<?=($receipts)?>" width:"100px" height="50px"/>
                <? } else {
                    echo "no receipt";
    } ?>

这只显示“没有_x”文件名。如何使用循环_1_2_3显示用户的其他图像(例如我@ yahoo)...它应显示属于用户的所有图像。

1 个答案:

答案 0 :(得分:1)

我会创建一个辅助函数get_image来通过电子邮件和索引返回图像的路径,并使用while循环来构建图像列表:

<?php
function get_image($email, $i) {
    $path = "images/receipts/".$email;
    if ($i > 0) $path .= '_' . $i;
    $path .= '.jpg';
    if (file_exists($path)) return $path;
    return null;
}

$i = 0;
while ($path = get_image($email, $i)) {
    echo "<img src=\"$path\" width:\"100px\" height=\"50px\"/>";
    $i++;
} 

if ($i == 0) {
    echo "no receipt";
}
?>