php图片库循环随机遗漏图像

时间:2015-05-27 20:41:09

标签: php arrays image

我有一个库目录,用于检查目录,并应将目录中的所有图像转储到表中。但是 - 它似乎随机地不显示表中目录中的至少一个图像。我试过在数组上做一个var_dump,可以看到数组中的所有图像。数组键6和11和16未显示在输出中。目录中有19个图像,只显示16个。

以下是代码:

    <?php

    // open this directory 
    $myDirectory = opendir("images/");

    // get each entry
    while($entryName = readdir($myDirectory)) {
        $dirArray[] = $entryName;
    }

    // close directory
    closedir($myDirectory);

    //  count elements in array
    $indexCount = count($dirArray);

    var_dump($dirArray);

    ?>

    <table cellpadding="5"><tr>

        <?php
        for($index=0; $index < $indexCount; $index++) {
            $extension = substr($dirArray[$index], -3);
            if ($extension == 'jpg'){ // list only jpgs
                if ($i < 4) {
        echo '<td valign="top">
<center><a href="images/'.$dirArray[$index].'" rel="lightbox">
<img src="images/'.$dirArray[$index].'" width="200" >
</a><br>'.$dirArray[$index].'</td>';
        $i++;
    } elseif ($i == 4) {
        echo '</tr><tr>';
        $i = 0;
    }   
            }   
        } 
        ?>

1 个答案:

答案 0 :(得分:2)

问题出在这里。其中一些没有打印出来,因为它们与elseif之前的if语句不匹配。

} elseif ($i == 4) {
    echo '</tr><tr>';
    $i = 0;
}

elseif替换为if