Calling extended class function from parent class

Yes, you can call a method in the extending class.

<?php
class a 
{
    public function a1 ()
    {
        $this->b1();    
    }

    protected function b1()
    {
        echo 'This is in the a class<br />';
    }
}

class b extends a 
{
    protected function b1()
    {
        echo 'This is in the b class<br />';
    }
}

class c extends a
{
    protected function b1()
    {
        echo 'This is in the c class<br />';
    }
}

$a = new a();
$a->a1();

$b = new b();
$b->a1();

$c = new c();
$c->a1();   
?>

This will result in:

This is in the a class
This is in the b class
This is in the c class

You may also be interested in abstract classes http://us3.php.net/manual/en/language.oop5.abstract.php


use Magic methods of PHP __call or __callStatic

Reference