кодесурса
«PHP

Упражнения по PHP: создание новой функции, которая объединяет несколько функций в один вызываемый

script1adsense2code
script1adsense3code

PHP: упражнение 98 с решением

Напишите PHP-программу для создания новой функции, которая объединяет несколько функций в один вызываемый объект.

Пример решения: -

PHP-код:

<?php
//Licence: https://bit.ly/2CFA5XY
function compose(...$functions)
{
    return array_reduce(
        $functions,
        function ($carry, $function) {
            return function ($x) use ($carry, $function) {
                return $function($carry($x));
            };
        },
        function ($x) {
            return $x;
        }
    );
}
$compose = compose(
    // add 2
    function ($x) {
        return $x + 2;
    },
    // multiply 4
    function ($x) {
        return $x * 4;
    }
);
print_r($compose(2));
echo("\n");
print_r($compose(3));
?>

Пример вывода:

 16
20

Блок - схема:

«Блок-схема:

Редактор кода PHP:

Есть другой способ решить это решение? Внесите свой код (и комментарии) через Disqus.

Предыдущий: Напишите программу PHP для декапитализации первой буквы строки, а затем добавьте ее вместе с остальной частью строки.
Далее: написать программу PHP, чтобы запоминать заданную функцию в памяти.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code