Exemplo n.º 1
0
    {
        echo 1;
        self::f();
    }
}
class Class2 extends Class1
{
    protected static function f()
    {
        echo 'B';
    }
    public static function StaticFun()
    {
        echo 2;
        self::f();
        parent::f();
    }
}
if (true) {
    class Class3 extends Class2
    {
        public static function f()
        {
            echo 'C';
        }
    }
}
Class1::StaticFun();
Class2::StaticFun();
Class3::StaticFun();
Class3::f();
Exemplo n.º 2
0
        # code...
    }
    function ToString()
    {
        return ClassName::class;
    }
    function GetProp()
    {
        return $this->prop;
    }
}
class Class2 extends ClassName
{
    function get_lol()
    {
        echo parent::GetProp();
    }
    function get_copy()
    {
        return new static();
    }
}
################################################################################
namespace N1;

$obj = new Class2();
$obj->get_lol();
// prop
echo "</BR>";
var_dump(Class2::get_copy());
// object(N1\Class2)#2 (1) { ["prop":protected]=> string(4) "prop" }