var_dump(foo::$p1); var_dump(foo::$p2); var_dump(bar::$p1); var_dump(bar::$p2); var_dump(bar::$p3); $o1->inc(); var_dump(foo::$p7); class Foo2 { public static $my_static = 'foo'; public function staticValue() { return self::$my_static; } } class Bar2 extends Foo2 { public function fooStatic() { return parent::$my_static; } } print Foo2::$my_static . "\n"; $foo = new Foo2(); print $foo->staticValue() . "\n"; print $foo->my_static . "\n"; // Undefined "Property" my_static // $foo::my_static is not possible print Bar2::$my_static . "\n"; $bar = new Bar2(); print $bar->fooStatic() . "\n";