<?php
class Test
{
private $bar = 'hello';
public function returnSmth()
{
$foo = function () {
return "У нас есть доступ из анонимной функции к области видимости" .
"объекта, в котором она была создана. Пруф: {$this->bar}\n";
};
return $foo;
}
}
$test = new Test;
$foo = $test->returnSmth();
echo "Тест: {$foo()}";
PD9waHAKCmNsYXNzIFRlc3QKewoJcHJpdmF0ZSAkYmFyID0gJ2hlbGxvJzsKCQoJcHVibGljIGZ1bmN0aW9uIHJldHVyblNtdGgoKQoJewoJCSRmb28gPSBmdW5jdGlvbiAoKSB7CgkJCXJldHVybiAi0KMg0L3QsNGBINC10YHRgtGMINC00L7RgdGC0YPQvyDQuNC3INCw0L3QvtC90LjQvNC90L7QuSDRhNGD0L3QutGG0LjQuCDQuiDQvtCx0LvQsNGB0YLQuCDQstC40LTQuNC80L7RgdGC0LgiIC4gCgkJCSLQvtCx0YrQtdC60YLQsCwg0LIg0LrQvtGC0L7RgNC+0Lwg0L7QvdCwINCx0YvQu9CwINGB0L7Qt9C00LDQvdCwLiDQn9GA0YPRhDogeyR0aGlzLT5iYXJ9XG4iOwoJCX07CgkJcmV0dXJuICRmb287Cgl9Cn0KCiR0ZXN0ID0gbmV3IFRlc3Q7CiRmb28gPSAkdGVzdC0+cmV0dXJuU210aCgpOwoKZWNobyAi0KLQtdGB0YI6IHskZm9vKCl9IjsK