<?php
class A {
private function foo() {
echo 'bar';
}
public function test() {
$b = new B();
$b->call(function() {
$this->foo();
});
}
}
class B {
private function foo() {
echo 'buzz';
}
public function call (callable $fnc) {
return $fnc;
}
}
$a = new A();
$a->test();