До сих пор я узнал, что в PHP нет оператора запятой (я здесь не для мнения хорошо это или плохо). Так как я попадаю в картину таких выражений:
($tmp = bar(), foo($tmp), $tmp)
Я могу заменить оператор запятой вызовом пользовательской функции, которая принимает значение и лямбду и возвращает значение.
Но мне интересно — может быть, в PHP 7 появилась новая функция, которая упрощает подстановку или позволяет подставлять все формы выражений с запятыми?
Не совсем, но начиная с PHP 7 вы можете легко создавать и вызывать лямбда-функции одновременно, благодаря новому AST:
(function() { $tmp = bar(); foo($tmp); return $tmp; })();
Других решений пока нет …