Dies ist das erste Mal, dass ich ein Projekt im vollständigen OO-Stil mache. Meine Klassen sehen sehr unordentlich aus. Ich fand mich dabei, require_once
auf eine Reihe von Klassendateien und neue Instanzen von Klassen zu erstellen. Also habe ich alle erfordern und die Schaffung von Instanzen in eine separate Datei (init.php) wie folgt:Eine separate PHP-Klasseninitialisierungsdatei
<?php
require_once 'resources/config.php';
require_once 'classes/db.php';
require_once 'classes/auth.php';
require_once 'classes/msg.php';
require_once 'classes/validate.php';
require_once 'classes/view.php';
require_once 'functions/misc.php';
//DB connection
$db = new DB(DB_HOST, DB_USER, DB_PASS, DB_NAME);
$dbConnection = $db->connect();
$msg_class = new Msg();
$validate = new Validate($dbConnection);
$msg_strings[] = array();
$view = new View($dbConnection);
?>
Jetzt bin ich nur require_once
auf diese Datei zu tun.
Und ich verwende die View-Klasse nicht auf ein paar Seiten. Also ist es eine schlechte Übung und nicht gut für die Leistung, Instanzen einer Klasse zu erstellen, wenn ich sie nicht verwende?
Werfen Sie einen Blick auf "auto loading". Viel robuster und bequemer. – arkascha
können Sie beginnen, indem Sie die feine Anleitung über [Autoloading] lesen (http://php.net/manual/en/language.oop5.autoload.php) ... und dann, wenn Sie dieser Spur folgen, finden Sie viele Beispiele um. – YvesLeBorg