foreach ($menu as $k=>$v){
$arr[]['mid'] = $k;
$arr[]['num'] = $v;
}
print_r($arr);
输出:
Array ( [0] => Array ( [mid] =>9999 ) [1] => Array ( [num] => 1 ) )
而不是
Array ( [0] => Array ( [mid] =>9999 [num] => 1 ) )??为什么? 请教啊。 跟我想的不太一样,想不通啊,现在还在线
$arr[]['mid'] = $k;
$arr[]['num'] = $v;
}
print_r($arr);
输出:
Array ( [0] => Array ( [mid] =>9999 ) [1] => Array ( [num] => 1 ) )
而不是
Array ( [0] => Array ( [mid] =>9999 [num] => 1 ) )??为什么? 请教啊。 跟我想的不太一样,想不通啊,现在还在线
$arr[]=array('mid' =>$k, 'num' =>$v);
}
楼上是正解。你的一个循环中用了两个$arr[].说的直白点就是,当遇到一个$arr[]的时候数组的一维的元素数量就会加一,所以你每次赋值$arr[]就相当于把$v赋值到下一个元素中去了