array_walk
array_walk
(PHP 3>= 3.0.3, PHP 4)
array_walk - применяет пользовательскую функцию к каждому члену массива.
Описание
int array_walk (array array, string func [, mixed userdata])
Применяет определённую пользователем функцию func к каждому элементу массива array.
Функции func значение элемента массива будет передано как первый параметр, а ключ - как
второй параметр. Если userdata предоставлен, он будет передан как третий параметр в пользовательскую
функцию.
func обязана быть определяемой пользователем функцией и не может быть встроенной
функцией PHP. Таким образом, вы не можете использовать array_walk() непосредственно с
str2lower(), вы обязаны сначала построит с ней пользовательскую функцию, а затем передать
эту функцию как аргумент.
Примечание: вместо имени функции может быть предоставлен также массив, содержащий ссылку на объект и имя метода.
Если func требует более двух или трёх аргументов, в зависимости от userdata, будет генерироваться предупреждение каждый раз, когда array_walk() вызывает func. Эти предупреждения могут подавляться путём присоединения знака '@' перед вызовом array_walk() или путем использования error_reporting().
Примечание: если func должна работать с реальными значениями массива, специфицируйте, что первый параметр для func должен передаваться по ссылке. Тогда любые изменения, сделанные в этих элементах, будут сделаны в самом массиве.
Модификация массива из func может дать непредсказуемое поведение.
Примечание: передача ключа и userdata в func была введена в версии 4.0.
В PHP 4 reset() должна вызываться по мере необходимости, поскольку array_walk() не восстанавливает по умолчанию значения массива.
Пользователи не могут самостоятельно изменять массив из callback-функции, например, добавлять/удалять элементы, unset массив, к которому array_walk() применяется. Если массив изменяется, поведение функции не определено.