for循环中的PHP数组

时间:2014-04-25 20:23:50

标签: php arrays for-loop

有没有办法在for循环中创建一个数组。这里有几个类似的答案,但这些答案中的任何一个或逻辑都不适用于下面的代码。

for($j=1;$j<6;$j++) {
    $odg[$j] = "";
}
//the rest of the code which gives values to the array elements (outside the loop)

在将数组插入sql查询之前,这就是数组的样子。

$odg_ids = array($odg[1],$odg[2],$odg[3],$odg[4],$odg[5]);
$odg_list = implode("','", $odg_ids);

这是应该生成数组的for循环。

for($i=1;$i<6;$i++) {
    $odg_ids[] = $odg[$i];
    $odg_list[] = implode("','", $odg_ids[$i]);
}

有什么东西不见了?

1 个答案:

答案 0 :(得分:5)

您需要在循环之后执行implode 。否则,您每次都会继续追加odg_list

for ($i=1;$i<6;$i++) {
    $odg_ids[] = $odg[$i];
}
$odg_list = implode("','", $odg_ids[$i]);

我不确定你从哪里得到6,但你也可以使用array_slice来获得第1到第6个元素(你省略了第0个元素)。