Uw DBConnection
klasse zou een extra methode nodig hebben:
public function getLink()
{
return $this->mysqli;
}
Het lijkt erop dat uw oorspronkelijke User
class was een subklasse van DBConnection
, omdat mysqli
eigenschap op DBConnection
is protected
en User
klasse heeft een parent::__construct()
bellen.
Het is beter om afhankelijkheidsinjectie te gebruiken, zodat uw User
class ontvangt zijn databaseverbinding via de constructor:
public function __construct(DBConnection $db)
{
$this->mysqli = $db->getLink();
}
Vervolgens kunt u vanuit uw code uitvoeren:
$db = new DBConnection;
$uObj = new User($db);