如何读取数组并保存


How to read an Array and save

我试图读取一个数组来保存一些值,但它不起作用!这是我的代码:

$array=$_POST['idprod'];//I get my array and save it on a var 
print_r($array); //It has ALL the data (I use a print_r($array); And YES!! It has the information i need)
$ids[]=explode(',',$array);//Substring to my var 
for( $contador=0; $contador <count($ids); $contador++ ) 
{ 
echo $ids[$contador].'<br/>'; 
} 

它显示给我Array to string conversion in...

我能做什么?

使用foreach而不是循环foreach构造提供了一种简单的方法来迭代数组。foreach只适用于数组和对象,当您尝试在具有不同数据类型或未初始化变量的变量上使用它时,它会发出错误。有两种语法:

foreach (array_expression as $value)
    statement
foreach (array_expression as $key => $value)
    statement

foreach ($array => $var ) {
    // do any thing
}

更换

$ids[]=explode(',',$array);//Substring to my var 
for( $contador=0; $contador <count($ids); $contador++ ) { 
echo $ids[$contador].'<br/>'; 

并设置

$ids = explode(',',$array);
foreach($ids as $id) {
    echo $id ."<br>";
}

如果输入的数据是逗号分隔的字符串,则只需要explode()。

$string = $_POST['idprod'];
$array= explode(',', $string); // split the comma separated values into an array
for($i=0; $i<count($array); $i++) 
{ 
    echo $array[$i] . '<br/>'; 
} 

否则,您可以直接使用输入数组:

$array = $_POST['idprod']; 
for($i=0; $i<count($array); $i++) 
{ 
   echo $array[$i] . '<br/>'; 
}