Код: Выделить всё
// imagine there's a special type of "deferred" variables
$var = (deferred) function () {
// do something very expensive to calculate
return 42;
};
// do something else - we do not need to know $var value here,
// or may not need to know it at all
var_dump($var * 2);
// after some million years it prints: int(84)
// now this is the hardest part...
var_dump($var); // notice no brackets here
// prints immediately as we already know it: int(42)
// this will fail
function __toString()
{
return new Something();
}
< /code>
Конечно, я могу обернуться вокруг закрытия другим объектом, но это означает, что все в стеке должны будут знать, как с ним справиться. И это то, чего я хочу избежать. < /P>
Это даже удаленно возможно? Может быть, есть где-то хакерское pecl, чтобы сделать это или что-то подобное.>
Подробнее здесь: https://stackoverflow.com/questions/266 ... ure-in-php
Мобильная версия