我試圖構建一個多陣列採用這種結構:PHP foreach循環來構建多陣列
Array
(
[2] => Array //this is the user's unique ID
(
[name] => Jack
[location] => Somerville, Massachusetts, United States
[cars] => Array
(
[10] => Toyota //this is the car's unique ID
[11] => Porsche
)
)
[5] => Array
(
[name] => Luke
[location] => Schwelm, North Rhine-Westphalia, Germany
[cars] => Array
(
[1] => Honda
[2] => VW
[5] => Maserati
)
)
[1] => Array
(
[name] => Jabba
[location] => Denver, Colorado, United States
[cars] => Array
(
[3] => Tesla
)
)
)
我用這foreach
循環,但我堅持在得到cars
陣列嵌入search data
陣列內。
每個用戶可能有多輛車,所以我需要循環遍歷每個用戶的所有車輛,生成該陣列,並將其放入原始的foreach
循環中。
$search_data = array();
foreach ($query->result() as $row) {
$search_data[$row->id] = array(
'name' => $row->name,
'location' => $row->location,
'cars' => array($row->car_id), //this is where I need to insert another array
);
}
return $search_data;
任何建議如何做到這一點?
感謝您的幫助!
樣本表數據
USER NAME LOCATION CARS
2 JACK A TOYOTA
2 JACK A PORSCHE
5 LUKE B HONDA
5 LUKE B VW
5 LUKE B MASERATI
1 JABBA C TESLA
shouldent $按行> car_id是一個數組已經後更好的辦法弄清楚? – 2011-05-22 04:13:20
我只是把它放在那裏以顯示我需要幫助的地方 - 讓它像那樣只會返回一輛車,而不是用戶可能擁有的一系列汽車 - 我需要爲每個用戶循環所有車輛 – pepe 2011-05-22 04:24:53
很難如果汽車在不同的行上分開,那麼汽車就會變成一個數組,因爲當你把它放在一個數組中時,同一個查詢的下一個結果就會浪費,你知道我的想法了嗎? – 2011-05-22 04:34:46