Среди немногих функций, которые были добавлены в последнюю выпущенную версию PHP 7, функция стрелок кажется мне потрясающей, поскольку она была в JS ES6. Поэтому я решил поговорить об этом, используя некоторые общие функции высшего порядка, которые мы уже знаем - array_map () и array_filter.
array_filter () выполняет итерацию по каждому значению в array
, передавая их функции callback
. Если функция callback
возвращает TRUE
, текущее значение из array
возвращается в массив результатов. Ключи массива сохраняются.
Давайте посмотрим, как это используется в предыдущих версиях PHP до PHP 7.4. Вы увидите необходимость использовать PHP 7.4, чтобы упростить и упростить работу. Да! Очиститель
Давайте перейдем к делу, а теперь взглянем на код ниже:
Это обычный способ написания php и использования функции array_filter () до PHP 7.4.
Теперь давайте посмотрим, что предлагает PHP 7.4, на том же примере кода, приведенном выше:
Вы заметили, как 3 строки кода сократились до 1 в строках 4–6 и 4 двух приведенных выше примеров, соответственно, и был получен тот же результат?
Вы также заметили странное ключевое слово fn во втором примере? Что ж, это означает функция. И да, есть неявный возврат с функцией стрелки.
Теперь давайте посмотрим на еще одну распространенную функцию высшего порядка.
array_map () возвращает массив, содержащий результаты применения функции callback
к соответствующему индексу array1
(и ...
, если предоставлено больше массивов), используемых в качестве аргументов для обратного вызова. Количество параметров, которые принимает функция callback
, должно соответствовать количеству массивов, переданных в array_map ().
Пример этого и как это можно использовать в предыдущих версиях PHP до 7.4:
PHP 7.4 делает написание того же фрагмента кода более чистым и быстрым благодаря функции стрелок.
Давайте взглянем:
Разве это не намного чище и быстрее?