Le rôle du destructeur php
En bref, le rôle du destructeur est de libérer de la mémoire.
Destructeur
__destruct ( void ) : void
PHP 5 a introduit le concept de destructeur, similaire à d'autres langages orientés objet tels que le C++. Le destructeur est exécuté lorsque toutes les références à un objet sont supprimées ou lorsque l'objet est explicitement détruit, ce qui signifie que le destructeur est exécuté lorsque l'objet instancié par la classe est détruit.
Exemple de destructeur
<?php class MyDestructableClass { function __construct() { print "In constructor\n"; $this->name = "MyDestructableClass"; } function __destruct() { print "Destroying " . $this->name . "\n"; } } $obj = new MyDestructableClass(); ?>
Comme le constructeur, le destructeur de la classe parent ne sera pas appelé secrètement par le moteur. Pour exécuter le destructeur de la classe parent, parent::__destruct() doit être explicitement appelé dans le corps du destructeur de la classe enfant. De plus, tout comme le constructeur, la sous-classe héritera de la classe parent si elle ne définit pas de destructeur.
Le destructeur est appelé même lorsque le script est terminé à l'aide de exit(). L’appel de exit() dans le destructeur annulera les opérations d’arrêt restantes.
Remarque :
● Le destructeur est appelé à la fermeture du script, lorsque tous les en-têtes HTTP ont été envoyés. Il est possible que le répertoire de travail lorsque le script est fermé soit différent de celui lorsqu'il se trouve dans un SAPI (comme Apache).
● Tenter de lever une exception dans le destructeur (qui est appelé à la fin du script) entraînera une erreur fatale.
Recommandations associées : [Tutoriel PHP]
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!