PHP: печать ассоциативного массива
в PHP, у меня есть ассоциативный массив такой
$a = array('who' => 'one', 'are' => 'two', 'you' => 'three');
Как написать foreach
цикл, который проходит через массив и получает доступ к ключу массива и значению, чтобы я мог манипулировать ими (другими словами, я мог бы получить who
и one
присваивается двум переменным $key
и $value
?
2 ответов
@Thiago уже упоминает способ доступа к ключу и соответствующему значению. Это, конечно, правильное и предпочтительное решение.
однако, потому что вы говорите
Так что я могу манипулировать ими
Я хочу предложить два других подхода
-
Если вы хотите только манипулировать значением, обратитесь к нему как к ссылке
foreach ($array as $key => &$value) { $value = 'some new value'; }
-
Если вы хотите манипулировать ключом и значение, вы должны идти в другую сторону
foreach (array_keys($array) as $key) { $value = $array[$key]; unset($array[$key]); // remove old key $array['new key'] = $value; // set value into new key }