我在 while 循环中添加到数组时遇到了一些麻烦,想知道你们中的任何人是否可以帮助我。首先,一些背景。我正在遍历一些 sql 结果并尝试在按各种 id 分组的同时收集结果,以便以后更容易处理。它似乎只是一行代码不起作用。下面有一些代码
while($row=mysql_fetch_assoc($res)){
if(!array_key_exists($row['foreign_key_value'],$contacts)){
$contacts[$row['foreign_key_value']]=array();
}
if(!array_key_exists($row['uid'],$contacts['foreign_key_value'])){
$contacts[$row['foreign_key_value']][$row['uid']]=array();
}
$contacts[$row['foreign_key_value']][$row['uid']][$row['rating_id']]=$row['rating_value'];
}
这是我遇到问题的最后一行,我在其中添加 rating_id 和 rating_value。我循环的数据是 4 个字段——foreign_key_value、uid、rating_id 和 rating_value。我想要结束的结构看起来像
array(1) {
[73]=>
array(2) {
[9]=>
array(1) {
[4]=>
string(1) "3"
}
[1762]=>
array(1) {
[1]=>
string(1) "5"
}
}
我只是无法让 rating_id 和 rating_value 在最后一个数组中创建多个键值对,我期待 5 对。我得到的唯一东西是选择的最后一对。我真的不知道为什么我没有得到我需要的数据,有人可以帮忙吗?
abc667 - 你在现场。非常感谢。我一直盯着它看太久了,我错过了,现在我开始觉得自己像个白痴