Maison > développement back-end > Problème PHP > Le rôle du destructeur php

Le rôle du destructeur php

藏色散人
Libérer: 2023-02-23 10:56:02
original
4017 Les gens l'ont consulté

Le rôle du destructeur php

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
Copier après la connexion

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();
?>
Copier après la connexion

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!

Étiquettes associées:
php
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal