PHP循环中创建一个多维数组。

比如
$aa=array("aid"=>1,"cc"=>"a");
$bb=array("aid"=>3,"cc"=>"b");
$cc=array("aid"=>1,"cc"=>"a");
我想要的结果就是在while循环中以aid为键值名,cc为值。
比如得到 array([1]=>array([0]=>a,[1]=>a),[3]=>array([0]=>b))
因为我是结合数据库返回值的查询,所以是在while语句下。
while($arr = $db->Gaa()){
//请在此内输出
}

非常感谢!

第1个回答  2011-05-26
$cc=array("aid"=>1,"cc"=>"a");
$aa=array("aid"=>1,"cc"=>"a");
二个键值都一样。造成$arr[1]吧之前的覆盖了
第2个回答  2011-05-26
第一次循环时 $i=0 也就等于 echo $string[$i][$j];这个地方要找到二维数组$string下面键名为 0的数组! 而你最开始的时候是以 1 给数组起的键名
第3个回答  推荐于2018-10-16
$array = array();
while($arr = $db->Gaa()){
$array[$arr['aid']][] = $arr['cc'];
}
print_r($array);追问

键值相同,造成$arr[1]吧之前的覆盖了

追答

你确定你试过了吗?
$array = array();
$arrayTest = array();
while($arr = $db->Gaa()){
$array[$arr['aid']][] = $arr['cc'];
$arrayTest[] = $arr;
}
print_r($arrayTest);
print_r($array);
你把打印结果发上来看看。

追问

我用多维数组做好了,谢谢你了

本回答被提问者和网友采纳