{ parent::printFoo(); echo __CLASS__, ': ', $this->foo, " ", $this->foo2, "\n"; } } class baz extends bar { protected $foo = 'baz'; protected $foo2 = 'baz2'; } class bar2 extends foo { function printFoo() { parent::printFoo(); echo __CLASS__, ': ', $this->foo, " ", $this->foo2, "\n"; } } class baz2 extends bar2 { protected $foo = 'baz2'; protected $foo2 = 'baz22'; } $bar = new bar(); $bar->printFoo(); echo "---baz--\n"; $baz = new baz(); $baz->printFoo(); echo "---baz2--\n"; $baz = new baz2(); $baz->printFoo();
const FUZ = 1; } namespace foo { class bar { public function test() { echo __CLASS__ . PHP_EOL; } } const FUZ = 2; class baz extends bar { public function fiz() { self::test(); parent::test(); static::test(); bar::test(); } } $x = new baz(); $x->fiz(); var_dump(true); var_dump(false); var_dump(null); var_dump(INF); var_dump(FIZ); var_dump(FUZ); var_dump(\FUZ); }
<?php class foo { public function __construct() { echo get_called_class(), "\n"; } public static function test() { echo get_class(), "\n"; } } class_alias('foo', 'bar'); new bar(); class baz extends bar { } new baz(); baz::test(); bar::test();