Constructeurs et destructeurs des classes PHP programmation orientée objet en PHP - Partie 2 Introduction Cela fait partie de ma série 2, Programmation Orientée Objet en PHP. Dans la partie précédente de la série, nous avons vu comment inclure des valeurs de propriété par défaut dans une classe. Ces valeurs par défaut sont comme valeurs initiales pour la classe et ses objets instanciés. Je dis que d'avoir des valeurs par défaut était pas une pratique courante. Je dis qu'il est bon de donner des valeurs initiales pour les propriétés lors de l'instanciation d'un objet.
De cette façon, seul l'objet aura les valeurs initiales; la classe aura pas. Dans cette partie de la série, nous regardons PHP constructeur et destructeur. Remarque: Si vous ne pouvez pas voir le code ou si vous pensez que quelque chose manquait (lien brisé, l'image absente), contactez-moi au [email protected]. Qui est, me contacter pour le moindre problème que vous avez à propos de ce que vous lisez. Le PHP constructeur Function a une fonction prédéfinie appelée, __construct ().
Cette fonction est utilisée pour instancier un objet et dans le même temps initialisation de l'objet (pas la classe). Le __construct () Fonction Ceci est la fonction constructeur. La syntaxe de cette fonction est prédéfinie: __construct vide ([args mixed $ [, $ ...]]) La fonction ne renvoie rien. Les arguments de la fonction sont utilisés pour initialiser les propriétés de l'objet. Vous êtes le seul à saisir le contenu du bloc de la fonction. Qu'est-ce aller dans le bloc sont normalement déclarations initialisation des propriétés de l'objet.
Lire et essayer le programme suivant qui illustre ceci: class {public Cla $ var1; publique var2 $; fonction __construct (v1 $, $ v2) {$ this-> var1 = $ v1; $ this-> var2 = $ v2; } Public function affichage () {echo $ this-> var1. " et " . $ this-> var2; }} $ Obj = new Cla («homme», «femme»); $ obj-> display (); ?> Ce qui est réellement prédéfini dans cette fonction est juste le nom de la fonction. Vous le programmeur de déterminer le contenu de la liste d'arguments et les instructions dans le bloc de fonction.
De cette façon, que vous instanciez un objet, vous initialiser l'objet et non la classe. Cette pratique est courante. La fonction constructeur est appelé lors de l'instanciation. Les arguments envoyés dans les parenthèses de la déclaration d'instanciation deviennent les arguments de la fonction constructeur. Ayant une fonction constructeur personnalisé dans le code de votre définition de classe comme ci-dessus, est facultatif. Si vous ne fournissez pas une fonction constructeur, PHP fournit un un par défaut pour vous, à votre insu.
Dans le cas d'une fonction de constructeur par défaut, aucune initialisation est fait; il n'y a pas d'arguments. Remarque: Lors de l'instanciation d'un objet que vous tapez les valeurs pour l'initialisation comme arguments dans les parenthèses du nom de la classe (après nouvelle); vous devez fournir une fonction constructeur (personnalisé) dans ce cas. La fonction destructeur Quand un objet est plus nécessaire dans un programme, PHP appelle une fonction destructeur qui détruit l'objet. PHP appelle une fonction de destructeur par défaut inconnue à vous de faire le travail.
Vous pouvez cependant ajouter certaines fonctionnalités à la fonction destructeur que dans la section suivante. Le __destruct () Fonction Ceci est la fonction destructeur. Sa syntaxe est: __destruct (void) Cette fonction ne renvoie rien et ne prend rien comme argument. Vous pouvez ajouter des fonctionnalités à la fonction de destructeur que dans le programme suivant: class Cla {public $ var1; publique var2 $; fonction __construct (v1 $, $ v2) {$ this-> var1 = $ v1; $ this-> var2 = $ v2; } Function __destruct () {echo "destruction de l'objet.
"; } Public function affichage () {echo $ this-> var1. " et " . $ this-> var2. "}} $ Obj = new Cla (« homme »,« femme »); obj- $> display ();?>