簡體   English   中英

如何從某個鍵開始迭代多維數組?

[英]How to iterate over a multidimensional array starting from a certain key?

我有一個從用戶窗體創建的多維數組。 我想從循環中的某個鍵開始,在foreach循環中遍歷數組。 由於某種原因,我的以下代碼無法正常工作。

$i = 3; 

foreach ($data as $val) {
    echo $val[$i] . " : " . $val['value'] . "<br />";
    $i++; 
}

輸出:

Array ( 
    [0] => Array ( [name] => name [value] => name ) 
     [1] => Array ( [name] => code [value] => code ) 
    [2] => Array ( [name] => description [value] => description ) 
     [3] => Array ( [name] => unit-1 [value] => uni 1 ) 
     [4] => Array ( [name] => unit-1-section-1 [value] => unit 1 sect 1 ) 
     [5] => Array ( [name] => unit-2 [value] => unit 2 ) 
     [6] => Array ( [name] => unit-2-section-1 [value] => unit 2 section 2 ) 
    ) 

如您所見,我想從$data數組中的第三個鍵開始。

只需使用常規的for循環並從3鍵開始(我猜這就是您所說的“ 3rd鍵”,盡管實際上它是第4鍵):

for ($i = 3; $i < count($data); $i++) {
    echo $data[$i]['name'] . " : " . $data[$i]['value'] . "<br />";
}

如果要從$ data中每個數組的第三個鍵開始:

foreach ($data as $val) {
   $count = count($val);
   for($i = 2; $i < $count; $i++)
      echo $val[$i]['name'] . " : " . $val[$i]['value'] . "<br />";
   }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM