Анонимные функции
Часть раздела Логика и управление потоком путешествия по PHP на Coddy. Урок 1 из 68.
anonymous functions, также известные как замыкания, — это functions без указанного имени. Они идеально подходят для коротких разовых задач, когда создание полноценной именованной function было бы излишним.
Чтобы создать анонимную функцию, используется ключевое слово function без имени функции, затем её присваивают переменной:
<?php
$greeting = function($name) {
echo "Hello, " . $name . "!";
};
?>Обрати внимание на точку с запятой после закрывающей фигурной скобки — она обязательна, потому что ты присваиваешь функцию переменной.
Чтобы вызвать anonymous function, используется имя variable, за которым следуют скобки:
<?php
$greeting("Alice"); // Выводит: Hello, Alice!
?>Анонимные функции особенно полезны, когда вам нужна простая функция для конкретной задачи, не загромождая код именованными функциями, которые вы будете использовать только один раз.
Задание
ЛегкоCreate anonymous function, которая принимает number в качестве параметра и возвращает square этого number. Assign эту function переменной с именем $square.
Вы получите number в качестве input. Read number, Call вашу anonymous function с этим number и print result.
Формат input: одно number (которое может содержать десятичные знаки)
Ожидаемый output: square input number
Попробуйте сами
<?php
// Считать ввод
$number = floatval(fgets(STDIN));
// TODO: Создать анонимную функцию и присвоить её переменной $square
// Вызвать функцию и вывести результат
echo $square($number);
?>В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Логика и управление потоком
1Продвинутые функции
Анонимные функцииЗамыкания и 'use'Стрелочные функцииCallback-функцииИспользование 'call_user_func'Функции переменныхПередача по ссылкеРекурсивные функцииИтоги: ассорти из функций4Многомерные массивы
Создание 2D-массиваДоступ к элементам 2D-массиваИзменение элементов 2D-массиваИтерация с вложенными цикламиДвумерные ассоциативные массивыИтоги: Упражнение «Простая сетка»2Продвинутая работа с массивами
Добавление с помощью 'array_push'Удаление с помощью 'array_pop'Добавление с помощью 'array_unshift'Удаление с помощью 'array_shift'Слияние индексных массивовСлияние ассоциативных массивовИзвлечение с помощью 'array_slice'Поиск значений с 'in_array'Поиск ключей с 'array_search'Итоги: Упражнение «Плейлист»3Сортировка массивов
Сортировка индексных массивов по возрастаниюСортировка индексных массивов по убываниюСортировка ассоциативных массивов по значениюСортировка ассоциативных массивов по ключуСортировка в естественном порядкеПользовательская сортировка с помощью 'usort'Итоги: Сортировка таблицы лидеровПотренируйтесь самостоятельно: Онлайн-компилятор PHP