|
array_map(PHP 4 >= 4.0.6, PHP 5) array_map — Применяет callback-функцию ко всем элементам указанных массивов ОписаниеФункция array_map() возвращает массив, содержащий элементы arr1 после их обработки callback-функцией. Количество параметров, передаваемых callback-функции, должно совпадать с количеством массивов, переданным функции array_map(). Список параметров
Возвращаемые значенияВозвращает массив, содержащий все элементы arr1 после применения callback-функции к каждому из них. Примеры
Пример #1 Пример использования array_map()
<?php В результате переменная $b будет содержать: Array ( [0] => 1 [1] => 8 [2] => 27 [3] => 64 [4] => 125 )
Пример #2 Использование array_map() вместе с lambda-функцией (начиная с версии PHP 5.3.0)
<?php Array ( [0] => 2 [1] => 4 [2] => 6 [3] => 8 [4] => 10 )
Пример #3 Пример использования array_map(): обработка нескольких массивов
<?php Результат выполнения данного примера: // вывод $c Array ( [0] => Число 1 по-испански - uno [1] => Число 2 по-испански - dos [2] => Число 3 по-испански - tres [3] => Число 4 по-испански - cuatro [4] => Число 5 по-испански - cinco ) // вывод $d Array ( [0] => Array ( [1] => uno ) [1] => Array ( [2] => dos ) [2] => Array ( [3] => tres ) [3] => Array ( [4] => cuatro ) [4] => Array ( [5] => cinco ) ) Обычно при обработке двух или более массивов, они имеют одинаковую длину, так как callback-функция применяется параллельно к соответствующим элементам массивов. Если массивы имеют различную длину, самый маленький из них дополняется элементами с пустыми значениями. Интересным эффектом при использовании этой функции является создание массива массивов, что может быть достигнуто путем использования значения NULL в качестве имени callback-функции.
Пример #4 Создание массива массивов
<?php Результат выполнения данного примера: Array ( [0] => Array ( [0] => 1 [1] => one [2] => uno ) [1] => Array ( [0] => 2 [1] => two [2] => dos ) [2] => Array ( [0] => 3 [1] => three [2] => tres ) [3] => Array ( [0] => 4 [1] => four [2] => cuatro ) [4] => Array ( [0] => 5 [1] => five [2] => cinco ) ) Если массив-аргумент содержит строковые ключи, то результирующий массив будет содержать строковые ключи тогда и только тогда, если передан ровно один массив. Если передано больше одного аргумента, то результирующий массив будет всегда содержать числовые ключи.
Пример #5 Использование array_map() со строковыми ключами
<?php Результат выполнения данного примера: array(1) { ["stringkey"]=> array(1) { [0]=> string(5) "value" } } array(1) { [0]=> array(2) { [0]=> string(5) "value" [1]=> string(5) "value" } } array(1) { ["stringkey"]=> string(5) "value" } array(1) { [0]=> array(2) { [0]=> string(5) "value" [1]=> string(5) "value" } } Смотрите также
|
|