У меня возникли проблемы с попыткой выполнить цикл через многомерный массив с использованием PHP. Когда я использую функцию print_r()
, вот мой вывод:
Array ( [0] => Array ( [fname] => [sname] => [address] => [address2] => [city] => [state] => Select State [zip] => [county] => United States [phone] => [fax] => [email] => [use_email] => on )
Я пробовал несколько методов, но никто не работает. Любая помощь приветствуется!
проще всего использовать инструкцию foreach:
foreach($yourarray as $array_element) { $address = $array_element['address']; $fname = $array_element['fname']; ... }
вы можете это сделать
foreach($array as $value) { foreach($value as $val) { echo $val; } }
Ваш код:
$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
Вам нужно получить доступ к индексированному массиву должным образом.
Похоже, перед тем, что вы хотите пропустить, есть еще одно измерение. Попробуй это.
foreach($array[0] as $key => $value) { echo $key, ': ', $value; }