Maison >développement back-end >Problème PHP >Quelle est la différence entre constructeur et destructeur en php

Quelle est la différence entre constructeur et destructeur en php

王林
王林original
2020-06-30 11:28:344588parcourir

La différence entre les constructeurs et les destructeurs en PHP est la suivante : 1. Le constructeur peut recevoir des paramètres et peut être affecté aux propriétés d'un objet lors de la création d'un objet. 2. Le constructeur est appelé lors de la création d'un objet. object. Fonction, le destructeur est automatiquement appelé lorsque l'objet est détruit.

Quelle est la différence entre constructeur et destructeur en php

Analyse des différences :

Constructeur

Classes avec un constructeur appellera d’abord cette méthode à chaque fois qu’un objet est créé.

void __construct ([ mixed $args [, $... ]] )
  • Le constructeur peut recevoir des paramètres et peut être affecté aux propriétés de l'objet lors de la création de l'objet

  • Le constructeur peut appeler des méthodes de classe ou d'autres fonctions

  • Le constructeur peut appeler des constructeurs d'autres classes

Exemple

<?php
class BaseClass {
   function __construct() {
       print "In BaseClass constructor\n";
   }
}

class SubClass extends BaseClass {
   function __construct() {
       parent::__construct();
       print "In SubClass constructor\n";
   }
}

$obj = new BaseClass();
$obj = new SubClass();
?>

Destructeur

void __destruct ( void )
  • Le destructeur est dans Lors de la destruction d'un objet, il est appelé automatiquement et ne peut pas être appelé explicitement

  • Le destructeur ne peut pas prendre de paramètres

Exemple :

<?php
class MyDestructableClass {
   function __construct() {
       print "In constructor\n";
       $this->name = "MyDestructableClass";
   }

   function __destruct() {
       print "Destroying " . $this->name . "\n";
   }
}

$obj = new MyDestructableClass();
?>

Si vous voulez pour en savoir plus sur les connaissances connexes, veuillez visiter le site Web chinois 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!

Déclaration:
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