ФункцияArraysPHP 4+

array_map() — применить функцию к элементам массива

array_map() создаёт новый массив из результатов callback и не изменяет исходный массив.

array_map(?callable $callback, array $array, array ...$arrays): array

Модель работы

Функция проходит по значениям, передаёт каждое callback-функции и собирает возвращённые результаты. Такой код подчёркивает преобразование данных, но не подходит для побочных эффектов.

Пример с типизацией

<?php
declare(strict_types=1);
$prices = [100, 250, 400];
$withTax = array_map(
    static fn (int $price): float => $price * 1.2,
    $prices
);

Ключи массива

При одном входном массиве строковые ключи сохраняются. При нескольких массивах результат получает последовательные числовые ключи. Если ключи важны для бизнес-логики, используйте foreach с явным присваиванием.

Когда выбрать foreach

foreach легче читать, если одновременно нужна фильтрация, ранний выход, логирование или накопление нескольких результатов. array_map() сильнее там, где преобразование чистое и умещается в короткий именованный callback.

Ошибки

Callback должен принимать столько аргументов, сколько передано массивов. Массивы разной длины дополняются null, поэтому строгий тип параметра может привести к TypeError.

Связанные материалы

Источники и проверка

  • PHP Documentation Group — структурный источник, без внешней ссылки

Последняя содержательная проверка: . Автор-разработчик Михаил Каржин. Методика качества контента.

Данные этого сервиса

Настройки cookie и локальных данных

Аналитика

Текущий статус: не выбран. До согласия обе аналитические системы не загружаются.

Локальные данные

Удаление затрагивает только ключи PHP-сервиса в этом браузере и требует подтверждения.

Политики

Политика конфиденциальности · Политика использования файлов cookie