基本PHP For循环问题,需要帮助

时间:2013-11-19 01:29:55

标签: php loops for-loop

// begin table centered with a border
print ('<table align = "center" border = 1>');
$index = 0; // initialize index

for ($i=0; $i <= $rows; $i++) {

    print("<tr>"); // start row
    for ($k=0; $k <= $columns; $k++) {
        $index++; // increment the index value
        // make sure we don’t exceed array bounds!
        if ($index <= $num_items) {
            tableContents(  $images[$index], 
                            $names[$index], 
                            $item_num[$index], 
                            $item_description[$index], 
                            $item_price[$index], 
                            $index);
        }
        else {
            print("<td></td>"); // make blank cell
        } // end if $index…
    } // end inner for
    print("</tr>"); // end row
} // end outer for…
print ("</table>"); // end table

我正在创建一个基本的php网页,将项目放在一个表格中,但是我的for循环中出现了问题,我需要一些帮助。看起来,数组并不是从0开始,我的$ index变量应该从0开始然后递增但是它会在开头吐出第2个项目。 任何帮助,将不胜感激!谢谢。

1 个答案:

答案 0 :(得分:3)

在选择元素之前你有$index++,这就是它从1开始的原因。在你的if-else语句结束后移动它。

另外,根据下面的评论,请确保您的数组不会超出范围。也就是说,如果数组中有n个元素,则最后一个元素的索引为n-1。因此,您可能需要$index < $num_items,以及$k < $columns$i < $rows