想象一下,我有一組數據。在它的每個產品含「身份證」,「鏈接」和「顯示」另一個數組:我應該如何構建一個數組以幫助引用數據?
$travel = array(
array(
'id' => 1,
'link' => 'bus',
'display' => 'bus'
),
array(
'id' => 2,
'link' => 'bike',
'display' => 'bicycle'
),
array(
'id' => 3,
'link' => 'cart',
'display' => 'horse and cart'
)
);
要顯示「顯示」由已知的ID($id
)我需要做這樣的事情:
foreach($travel as $t) {
if($t['id'] == $id) {
echo $t['display'];
break; // uuurgh, nasty...
}
}
同樣,由已知的鏈接($link
),以顯示「顯示」我需要做的是相同的:
更有效率,我可以創建兩個相似矩陣:
$travelID = array(
1 => array(
'link' => 'bus',
'display' => 'bus'
),
2 => array(
'link' => 'bike',
'display' => 'bicycle'
),
3 => array(
'link' => 'cart',
'display' => 'horse and cart'
)
);
$travelLink = array(
'bus' => array(
'id' => 1,
'display' => 'bus'
),
'bike' => array(
'id' => 2,
'display' => 'bicycle'
),
'cart' => array(
'id' => 3,
'display' => 'horse and cart'
)
);
,然後執行以下操作:
echo $travelID[$id]['display'];
echo $travelLink[$link]['display'];
但有保持所有數據在一起,同時仍然能夠簡單/快速引用它的一種方式?
爲什麼會這樣壞?這正是我在多數情況下使用多維數組的原因 – OptimusCrime 2012-01-05 12:16:32
@OptimusCrime哪個選項?兩個單獨的數組選項看起來像數據重複,我假設通過一個數組選項循環會很費時 – 2012-01-05 12:49:16
第一個。除非你有一個真正的大陣,否則這根本不是問題。無論如何,只需要一小段時間就完成。 – OptimusCrime 2012-01-05 12:52:49