Example #1
0
<?php

class first
{
    private function show()
    {
        echo "Call show()\n";
    }
    public function do_show()
    {
        $this->show();
    }
}
$t1 = new first();
$t1->do_show();
class second extends first
{
}
//$t2 = new second();
//$t2->do_show();
class third extends second
{
    private function show()
    {
        echo "Call show()\n";
    }
}
$t3 = new third();
$t3->do_show();
echo "Done\n";
Example #2
0
<?php

class first
{
    private static function show()
    {
        echo "Call show()\n";
    }
    public static function do_show()
    {
        first::show();
    }
}
first::do_show();
class second extends first
{
}
second::do_show();
class third extends second
{
}
third::do_show();
class fail extends third
{
    static function show()
    {
        // cannot be redeclared
        echo "Call show()\n";
    }
}
echo "Done\n";