Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie interagiert ein untergeordneter Klassenkonstruktor mit einem übergeordneten Klassenkonstruktor in PHP?

Wenn der Konstruktor der untergeordneten Klasse keine anderen Dinge tut, können Sie den Konstruktor weglassen.

Nur das Folgende ist in Ordnung:

class CheckOut extends DB_MySQL{
}

Aber wenn der Konstruktor der untergeordneten Klasse etwas anderes tun muss, ja, Sie müssen Folgendes tun:

class CheckOut extends DB_MySQL{

    public function __construct($dbuser, $dbpass, $dbhost, $dbname) 
    {
        parent::__construct($dbuser, $dbpass, $dbhost, $dbname);
        do_some_other_work();
    }
}

Wenn Sie verwenden, müssen Sie beide anrufen:

$checkout = new CheckOut($dbuser, $dbpass, $dbhost, $dbname);