2014-05-12 91 views
1

我有一個PHP數組獲取數據從多維數組

Array 
(
    [results] => Array 
     (
      [0] => Array 
       (
        [birthday] => 11-Apr-2014 
        [category] => Array 
         (
          [0] => 204 
          [1] => 300 
          [2] => 304 
         ) 

        [city] => Dhaka 
        [country] => Bangladesh 
        [email] => [email protected] 
        [fullName] => biplob 
        [gender] => Male 
        [inspirational] => Run to dream 
        [phone] => aapbd1 
        [photo] => Array 
         (
          [__type] => File 
          [name] => 8bef9bc3-ee64-45df-9698-0466e255c1bd-profilePhoto.jpg 
          [url] => http://files.com/c2dcf728-e2a3-4b2d-a8c8-6ec9b3c6502a/8bef9bc3-ee64-45df-9698-0466e255c1bd-profilePhoto.jpg 
         ) 

        [username] => aapbd 
        [website] => http://ss.com 
        [createdAt] => 2014-04-10T19:01:16.396Z 
        [updatedAt] => 2014-04-28T07:36:18.459Z 
        [objectId] => IQSCdXE2hI 
       ) 

      [1] => Array 
       (
        [birthday] => 09-Apr-1982 
        [category] => Array 
         (
          [0] => 204 
          [1] => 307 
          [2] => 311 
          [3] => 313 
          [4] => 102 
          [5] => 103 
          [6] => 105 
          [7] => 107 
         ) 

        [city] => Madrid 
        [country] => Spain 
        [coverPhoto] => Array 
         (
          [__type] => File 
          [name] => aa53cf65-47af-464d-aa49-88202f91388f-coverPhoto.jpg 
          [url] => http://files.com/c2dcf728-e2a3-4b2d-a8c8-6ec9b3c6502a/aa53cf65-47af-464d-aa49-88202f91388f-coverPhoto.jpg 
         ) 

        [description] => a lazy man 
        [email] => [email protected] 
        [fullName] => Sjun 
        [gender] => Male 
        [inspirational] => Honesty is the best policy 
        [phone] => 135469 
        [photo] => Array 
         (
          [__type] => File 
          [name] => a1aec283-f3c7-484c-a8b2-a0b09c5f3023-profilePhoto.jpg 
          [url] => http://files.com/c2dcf728-e2a3-4b2d-a8c8-6ec9b3c6502a/a1aec283-f3c7-484c-a8b2-a0b09c5f3023-profilePhoto.jpg 
         ) 

        [username] => asa 
        [website] => 
        [createdAt] => 2014-04-09T07:58:19.043Z 
        [updatedAt] => 2014-05-07T11:13:40.671Z 
        [objectId] => iVb6olefaT 
       ) 


     ) 

) 

我想練習/學習foreach循環在PHP。我瞭解基本的foreach。但我與多維度鬥爭。

我想讓我的每一個陣列的生日,照片名稱,照片網址,類別。

,但我不能用foreach循環正確檢索這些

回答

5

用一個簡單的foreach()用於遍歷MD陣列..

foreach($yourarray['results'] as $k=>$arr) 
{ 
echo $arr['birthday']; 
echo $arr['photo']['name']; 
echo $arr['photo']['url']; 
} 
3

比方說,你的陣列是$數據,

foreach ($data['results'] as $key => $value) 
     echo $value['birthday'];  
     echo $value['photo']['name']; 
     echo $value['photo']['url']; 
} 

使用$key作爲索引值。

+1

了']'是'後失蹤name'。 –

1

這是你可以訪問你的嵌套數組,無論金額類別:

// Loop over all elements of main array element 
foreach($array['results'] as $arr_key => $arr_value) { 

    // Loop over children 
    foreach($arr_value as $key => $value) { 

     // Element is array (like 'category' or 'photo') 
     if(is_array($value)) { 
      foreach($value as $sub_key => $sub_value) { 
       echo $key."[".$sub_key."] = ".$sub_value; 
      } 

     // Element is no array 
     } else { 
      echo $key." = ".$value; 
     } 
    } 
} 

Example