1) Haal die @ weg aub, het is over het algemeen geen goed idee om fouten te onderdrukken.
2) Voeg meer methoden toe, nu heb je er niets aan.
3) Als je verbinding moet maken met twee verschillende databases, hoe ga je dat nu doen?
- de class copy-pasten en de gegevens aanpassen?
- setters maken?
- iets anders?
4) Je gebruikt in de if $hasConnection terwijl het $this->hasConnection hoort te zijn.
5) === controleert op waarde en op type, voorbeeldje:
PHP
if (1 == true)
{
// wordt uitgevoerd omdat ze beiden als niet-nul waarden worden gezien
}
if (1 === true)
{
// wordt NIET uitgevoerd omdat de ene een int is en de andere een boolean
}
// van php.net
var_dump((bool) ""); // bool(false)
var_dump((bool) 1); // bool(true)
var_dump((bool) -2); // bool(true)
var_dump((bool) "foo"); // bool(true)
var_dump((bool) 2.3e5); // bool(true)
var_dump((bool) array(12)); // bool(true)
var_dump((bool) array()); // bool(false)
var_dump((bool) "false"); // bool(true)
Toon Meer
6) Je zou Database::$hasConnection weg kunnen laten en "$this->connection instanceof MySQLi" kunnen gebruiken