在php中调用从子类到父类的函数

时间:2015-05-23 00:43:49

标签: php class

请查看这些classess:

class DB
{   
    protected saveINDB($name)
    {
       //insert $name to DB
    }

}

class Items extends DB
{
    private $name;

    function __construct($name) 
    {
          $this->name = $name;        
    }        
}

我希望在'项目'中保存$ name通过DB'中的方法到数据库类。

我想我可以这样做:

$item = new Item('Free');
$item->saveINDB($item->name);

是不是?

不能如何在第二课中自动调用函数?

例如...当我创建'项目'宾语。它在' DB'中调用saveINDB()数据库中保存$ name的类(如__construct()方法中的属性)

类似的东西:

class Items extends DB
{
    private $name;

    function __construct($name) 
    {
          $this->saveINDB($name);        
    }        
}

我希望你不和我。

2 个答案:

答案 0 :(得分:4)

根据您的示例,

$this->saveINDB($name);在构造函数中可以正常工作。除非你重写方法,否则不需要使用parent::,因为扩展一个类的重点是孩子继承父级的所有方法。

但是,您的数据库类中存在错误,这可能会导致问题:

protected function saveINDB($name) // function was missing

Here's a working demo on codepad

答案 1 :(得分:0)

您的意思是parent::saveINDB($name);吗?