Синтаксис функции array_map():
array_map(callback, array1, array2, ...)callback: функция, которая будет применена к каждому элементу массива.array1, array2, ...: массивы, к которым будет применена функция.
Пример использования
Допустим, у нас есть массив чисел, и мы хотим возвести каждое число в квадрат:
$numbers = [1, 2, 3, 4, 5];
function square($n) {
return $n * $n;
}
$squared = array_map('square', $numbers);
print_r($squared);Результат:
Array
(
[0] => 1
[1] => 4
[2] => 9
[3] => 16
[4] => 25
)Применение нескольких массивов
Функция array_map() может принимать несколько массивов. В этом случае функция будет вызвана с аргументами из каждого массива:
$names = ['Alice', 'Bob', 'Charlie'];
$salaries = [50000, 60000, 70000];
function displayEmployee($name, $salary) {
return "$name earns $salary";
}
$employees = array_map('displayEmployee', $names, $salaries);
print_r($employees);Результат:
Array
(
[0] => Alice earns 50000
[1] => Bob earns 60000
[2] => Charlie earns 70000
)Использование анонимных функций
Вместо определения отдельной функции, можно использовать анонимные функции (лямбда-функции):
$numbers = [1, 2, 3, 4, 5];
$squared = array_map(function($n) {
return $n * $n;
}, $numbers);
print_r($squared);Результат будет таким же, как и в первом примере.
Заключение
Функция array_map() — это мощный инструмент для обработки массивов в PHP. Она позволяет легко применять пользовательские функции к каждому элементу массива и возвращает новый массив с результатами. Это делает код более читаемым и эффективным.