Gibt es Situationen, in denen diese Methode nicht aufgerufen wird?
Ich denke, eine wichtige Variable in einen persistenten Cache zu speichern, kurz bevor das Cache-Objekt zerstört wird. Diese Variable wird viele Male auf der Seite verwendet, daher möchte ich den Cache nicht jedes Mal aktualisieren, wenn sich die Variable ändert ...
Lassen Sie uns eine Klasse haben:
%Vor%Und Testcode:
%Vor%Also im Grunde: Es gibt Situationen (fatale Fehler), wenn der Destruktor nicht aufgerufen wird.
Ah und diese Frage hat dieselbe Antwort wie diese: When Wird __destruct nicht in PHP aufgerufen? (+/-)
Es wird aufgerufen, sobald keine Referenzen mehr auf dieses bestimmte Objekt oder während der Abschaltsequenz vorhanden sind. Das Handbuch gibt auch an, dass Destruktoren aufgerufen werden, wenn Skripte mit exit () beendet werden.
Abgesehen von dem Problem, auf das TimWolla hingewiesen hat, sind mir keine Probleme mit PHP-Destruktoren bekannt.