PHP foreach循环不从数组中读取值

时间:2016-03-04 16:59:18

标签: php arrays loops

我有简单的PHP数组,其中包含复选框中的数据。我需要将值添加到数组中,然后将数据插入数据库。它有效,但不是侵权参数。

所以我用增量测试:

$arr = array();
array_push($arr, $_POST['chbox']);

在数组中看起来像123,125(两个元素) 下一步是返回元素数量(或下一步中的值):

$id=0;
foreach(  $arr as $row)
{
    $id++;                              
};

并返回$id=1;

如果我正在尝试读取值:

foreach(  $arr as $row)
{
    $row[$id]   
    $id++;
};

仅返回123

4 个答案:

答案 0 :(得分:1)

foreach()循环中,$row只是一个数组值。不是阵列。替换为$arr应解决。

$id = 0;
foreach( $arr as $row ){
    echo $arr[$id];
    $id++;
}
echo 'Total items: ' . $id; // OR count( $arr );

答案 1 :(得分:1)

如果你正在做foreach,$ row就是值。

foreach($arr as $row) {
    echo $row;
    $id++;
}

答案 2 :(得分:1)

试试

foreach($arr as $row){
     echo $row;
};

编辑1: 最好使用var_dump($_POST["chkbox"])print_r($_POST["chkbox"])来查看您获得的数组。然后,您将更容易决定如何获取数据。

答案 3 :(得分:1)

$arr =array(123,125);

foreach($arr as $arrr):
   echo $arrr.',';
endforeach;

输出将是:

123,125,