@delphine_bartoletti
Анонимные функции в PHP являются функциями, которые не имеют имени и могут быть определены и вызваны в одном месте. Они часто используются в качестве параметров для других функций, таких как array_map(), array_filter() и usort(), которые ожидают функцию в качестве аргумента.
Вот несколько примеров того, как правильно использовать анонимные функции в PHP:
1 2 3 4 5 |
$greeting = function($name) { echo "Hello, $name!"; }; $greeting("John"); // выводит "Hello, John!" |
1 2 3 4 5 6 |
$numbers = [1, 2, 3, 4, 5]; $filtered_numbers = array_filter($numbers, function($number) { return $number % 2 == 0; }); print_r($filtered_numbers); // выводит Array ( [1] => 2 [3] => 4 ) |
1 2 3 4 5 6 7 8 9 10 |
$numbers = [5, 2, 8, 1, 9]; usort($numbers, function($a, $b) { if ($a == $b) { return 0; } return ($a < $b) ? -1 : 1; }); print_r($numbers); // выводит Array ( [0] => 1 [1] => 2 [2] => 5 [3] => 8 [4] => 9 ) |
1 2 3 4 5 6 7 8 |
$multiplier = 2; $numbers = [1, 2, 3, 4, 5]; $multiplied_numbers = array_map(function($number) use ($multiplier) { return $number * $multiplier; }, $numbers); print_r($multiplied_numbers); // выводит Array ( [0] => 2 [1] => 4 [2] => 6 [3] => 8 [4] => 10 ) |
Здесь мы использовали ключевое слово "use", чтобы передать переменную $multiplier в анонимную функцию, которая используется в array_map().