- assert: documentation ( source)
<?php
class Foo {
static function bar() {
$foo = static function() {
return get_called_class();
};
return $foo();
}
static function baz() {
$foo = function() {
return get_called_class();
};
return $foo();
}
static function rebind() {
$foo = function() {
return get_called_class();
};
$oFoo=new Foo;
return $foo->bindTo($oFoo);
}
}
class Bar extends Foo {
}
//print Bar::bar() . Bar::baz() .
print Bar::rebind();
assert(Bar::bar() === 'Bar');
assert(Bar::baz() === 'Bar');