Ich habe Zweifel mit Instanzen in PHP. Ich habe eine Klasse erstellt, die im Grunde Abfragen an eine Datenbank sendet. Die Frage ist, dass es richtig ist, jedes Mal, wenn ich eine Abfrage ausführen möchte, eine Instanz zu erstellen oder einfach dieselbe Instanz zu verwenden, die den dieser Klasse zugewiesenen Speicher überschreibt. Zum Beispiel:PHP Klassen und Instanzen
//Select
$conversation = new mQuery();
$conversation->operation = "select";
$conversation->data = array("bla", "bla", "bla");
$result = $conversation->execute();
//Update
$conversation = new mQuery();
$conversation->operation = "update";
$conversation->data = array("bla", "bla", "bla");
$result = $conversation->execute();
VERSUS
//Create instance ONCE
$conversation = new mQuery();
//Select
$conversation->operation = "select";
$conversation->data = array("bla", "bla", "bla");
$result = $conversation->execute();
//Update
$conversation->operation = "update";
$conversation->data = array("bla", "bla", "bla");
$result = $conversation->execute();
Vielen Dank im Voraus.
Normalerweise erstellen wir ein neues Objekt für jede Operation speziell, wenn das Objekt nur dafür ist. Außerdem macht es den Code sauberer und einfacher zu verstehen. Die Sprache sollte die Garbage Collection für Sie übernehmen. – Hani
Es hängt auch von der Implementierung der Klasse ab. Was passiert, wenn Sie vergessen haben, '-> data' aufzurufen und die Daten aus dem vorherigen Lauf wieder verwendet? – FirstOne
@FirstOne Deshalb bin ich im Zweifel. Vielleicht ist es besser, jedes Mal eine neue Instanz zu erstellen, um den Speicher zu bereinigen. Wenn eine falsche Variable vorhanden ist, schlägt sie fehl, anstatt sie aus der vorherigen Zuweisung zu übernehmen. – ProtectedVoid