How to call parent function from instance of child?

Viewed 61654

I have model

BaseUser.class.php
User.class.php
UserTable.class.php

In user Class I have been override the delete function

class User extends BaseUser {
   function delete(){
    }
}

Now, if i want to call parent delete function .... how ?

Example

$user = new User();
$user->delete();  // will call the overridden delete
$user-> ??  ;     // want to call parent delete
6 Answers

It can be done using call_user_func. Yes, its bad practice, but its possible.

class BaseUser {
    public function delete()
    {
        echo 'BaseUser deleted';
    }
}

class User extends BaseUser{
    public function delete()
    {
        echo 'User deleted';
    }
}

$instance = new User();

call_user_func(array($instance, 'parent::delete'));

result:

BaseUser deleted
Related