我注意到一些奇怪的行爲,而通過一些數據循環。我相信這很簡單,但我似乎無法找到錯誤。 我有以下邏輯:php代碼 - 試圖循環數組
<?php
print 'dumping data : <BR>';
var_dump($portvlan);
print '<BR>';
print 'looping through data: <BR>';
foreach ($portvlan as $vlandetail){
echo 'Vlanid: '.$vlandetail['VlanId'].'<BR>';
echo 'Name: '.$vlandetail['Name'].'<BR>';
echo 'Mode: '.$vlandetail['Mode'].'<BR>';
}
?>
這是我得到的輸出:
dumping data :
array(3) { ["VlanId"]=> string(2) "33" ["Name"]=> string(6) "USR_33" ["Mode"]=> string(6) "Access" }
looping through data:
Vlanid: 3
Name: 3
Mode: 3
Vlanid: U
Name: U
Mode: U
Vlanid: A
Name: A
Mode: A
我所期待的是看到它打印一行3個細胞,具有以下值: 33,USR_33,Access。
你能告訴我我要去哪裏嗎? 謝謝。當$ portvlan陣列有多個入口
編輯1
這種邏輯正常工作。 例如,在另一組數據,後續代碼var_dump給出了這樣的結果:
array(6) { [0]=> array(3) { ["VlanId"]=> string(1) "1" ["Name"]=> string(1) "1" ["Mode"]=> string(5) "Trunk" } [1]=> array(3) { ["VlanId"]=> int(2) ["Name"]=> int(2) ["Mode"]=> string(5) "Trunk" } [2]=> array(3) { ["VlanId"]=> int(3) ["Name"]=> int(3) ["Mode"]=> string(5) "Trunk" } [3]=> array(3) { ["VlanId"]=> int(4) ["Name"]=> int(4) ["Mode"]=> string(5) "Trunk" } [4]=> array(3) { ["VlanId"]=> int(5) ["Name"]=> int(5) ["Mode"]=> string(5) "Trunk" } [5]=> array(3) { ["VlanId"]=> string(2) "33" ["Name"]=> string(2) "33" ["Mode"]=> string(5) "Trunk" } }
,循環邏輯正常工作。
您打算給'$ portvlan'設置一個'vlans'數組嗎?如果是這樣,那麼你的數據應該是一個數組的數組,即'array(array(「VlanID」=>「33」,「Name」=>「USR_33」,「Mode」=>「Access」))''。你如何檢索源數據? – mellamokb
@mellamokb你可以發佈這個答案? – dot