3v4l.org

run code in 300+ PHP versions simultaneously
<?php $f = function() {}; $rf = new reflectionFunction($f); var_dump($rf->getClosureThis()); var_dump($rf->getClosureScopeClass()); class foo { public function getNotStaticClosure() { return function() {}; } public static function getStaticClosure() { return function() {}; } } $foo = new foo(); $f = $foo->getNotStaticClosure(); $rf = new reflectionFunction($f); var_dump($rf->getClosureThis()); var_dump($rf->getClosureScopeClass()); $f = foo::getStaticClosure(); $rf = new reflectionFunction($f); var_dump($rf->getClosureThis()); var_dump($rf->getClosureScopeClass());

preferences:
32.88 ms | 402 KiB | 5 Q