PHP多维数组构建
我试图在一个循环中构建一个多维数组,但我不明白为什么这段代码不起作用PHP多维数组构建,php,arrays,Php,Arrays,我试图在一个循环中构建一个多维数组,但我不明白为什么这段代码不起作用 <?php $users = array(35,25,45,34,56,67); $months = array('smelly','stinky','chubby','grubby','nubby','funky'); foreach($users as $user){ $mdata[$user] = array(); foreach($months as $month){ arra
<?php
$users = array(35,25,45,34,56,67);
$months = array('smelly','stinky','chubby','grubby','nubby','funky');
foreach($users as $user){
$mdata[$user] = array();
foreach($months as $month){
array_push($mdata[$user][],$month);
}
}
print_r($mdata);
?>
应该是:
array_push($mdata[$user],$month);
您需要更好地描述什么是无效的,以及您想要实现什么(可能是示例结果?),但这一行:
array_push($mdata[$user][],$month);
看起来很奇怪。如果让我猜的话,你希望是这样
array_push($mdata[$user],$month);
或
通常最好使用
$arr[]=$data
,因为不需要调用函数
foreach($months as $month){
$mdata[$user][] = $month ; //Just use the shorthand
}
如果阵列推送时有一个额外的[],请尝试:
array_push($mdata[$user],$month);
你让纪尧姆摇滚!非常感谢。
array_push($mdata[$user],$month);