Стрелочные функции в php

Стрелочные функции в PHP позволяют упростить запись анонимных функций, которые возвращают некоторое значение.

    Стрелочные функции

    Стрелочные функции появились как более лаконичный способ использования анонимных функций
    fn ( argument_list ) => expr
    Стрелочные функции автоматически получают доступ к переменным родительской области.

    $y = 1; $fn1 = fn($x) => $x + $y; // Эквивалентно получению переменной $y по значению: $fn2 = function ($x) use ($y) { return $x + $y; }; #Пример определения стрелочных функций fn(array $x) => $x; static fn(): int => $x; fn($x = 42) => $x; fn(&$x) => $x; fn&($x) => $x; fn($x, ...$rest) => $rest;

    Стрелочные функции привязывают переменные по значению. Это примерно эквивалентно выполнению конструкции use($x) для каждой переменной $x, с которой стрелочная функция будет работать внутри. Привязка по значению означает, что внутри стрелочной функции невозможно изменить значения из внешней области видимости. Вместо этого для привязок по ссылкам можно пользоваться анонимными функциями
    Стрелочные функции не умеют изменять значения из внешней области видимости
    Источник: https://www.php.net/manual/ru/functions.arrow.php

    $x = 1; $fn = fn() => $x++; // Ничего не изменит $fn(); var_export($x); // Выведет 1
    Источники
    Последнее изменение: 07.11.2024 22:31


    Связанные темы
    Здесь пока нет комментариев
    Добавлять комментарии могут только авторизованные пользователи

    Авторизоваться
    Я буду рекламой
    Я тоже буду рекламой
    И я
    ВВЕРХ