2012-12-04 122 views
2

我無法通過使用PHP循環遍歷多維數組。當我使用print_r()功能,這裏是我的輸出:通過多維陣列循環故障

Array ([0] => Array ([fname] => [sname] => [address] => [address2] => [city] => [state] => Select State [zip] => [county] => United States [phone] => [fax] => [email] => [use_email] => on) 

我嘗試了好幾種方法,但似乎沒有工作。任何幫助表示讚賞!

回答

2

最簡單的只是將使用foreach語句:由

foreach($array as $value) { 
    foreach($value as $val) { 
    echo $val; 
    } 
} 
1

看起來在你想要循環的東西之前還有一個維度。嘗試這個。

foreach($array[0] as $key => $value) { 
    echo $key, ': ', $value; 
} 
2

你可以做到這一點的是:

$set = array(0 => array ('fname' => '', 
          'sname' => '', 
          'address' => '', 
          'address2' => '', 
          'city' => '', 
          'state' => 'Select State', 
          'zip' => '', 
          'county' => 'United States', 
          'phone' => '', 
          'fax' => '', 
          'email' => '', 
          'use_email' => 'on') 
); 

$subArray = $set[0]; // <-- key line 
foreach($subArray as $k => $v) { 
    printf("key: %s, value: %s\n", $k, $v); 
} 

輸出:

key: fname, value: 
key: sname, value: 
key: address, value: 
key: address2, value: 
key: city, value: 
key: state, value: Select State 
key: zip, value: 
key: county, value: United States 
key: phone, value: 
key: fax, value: 
key: email, value: 
key: use_email, value: on 

您需要正確訪問索引數組。

2

您的代碼

foreach($yourarray as $array_element) { 
    $address = $array_element['address']; 
    $fname = $array_element['fname']; 
    ... 
}