В PHP 8.5 втащат пайпы из функционального программирования.
Вот такой синтаксис:
$numberOfAdmins = getUsers()
|> fn ($list) => array_filter($list, isAdmin(...))
|> count(...);
В первой итерации в трубу просто передаются коллаблы (callable), в которые первым аргументом передаётся результат предыдущей операции.
Я пока для себя не решил, насколько удобен или всрат синтаксис. С одной стороны можно было бы
fn()
для пайпов опустить, сделать просто скобочки. С другой, с fn()
не страдает консистентность.Также я ожидал увидеть PFA, чтобы писать поменьше кложур, но мб добавят в следующий раз.
// Без PFA:
$foo
|> bar(...)
|> fn($x) => array_filter($x, fn($v) => $v != 'O');
// С PFA:
$foo
|> bar(...)
|> array_filter(?, fn($v) => $v != 'O');
Кстати, на первом пыхапе был отличный доклад по ФП.
>>Click here to continue<<
