Maison développement back-end tutoriel php Méthodes magiques : comprendre __construct, __destruct et d'autres méthodes de base en PHP

Méthodes magiques : comprendre __construct, __destruct et d'autres méthodes de base en PHP

Jun 19, 2023 pm 11:22 PM
魔术方法 __construct __destruct

Méthodes magiques : comprenez les méthodes de base telles que __construct et __destruct en PHP

Dans le langage PHP, il existe des méthodes spéciales appelées « méthodes magiques », notamment __construct, __destruct, etc. Ces méthodes jouent un rôle important dans la programmation orientée objet en PHP. Cet article expliquera le rôle et l'application pratique de ces méthodes.

__méthode construct

__la méthode construct est une méthode très importante c'est une méthode qui est automatiquement appelée lorsque PHP crée un nouvel objet. Dans cette méthode, nous pouvons effectuer certains travaux d'initialisation, tels que définir des valeurs par défaut pour les propriétés de l'objet, se connecter à la base de données, etc. De plus, si on ne définit pas cette méthode, une erreur se produira lors de l’instanciation de la classe.

Ce qui suit est un exemple de code :

class Person{
  public $name;
  public $age;
  
  function __construct($name, $age){
    $this->name = $name;
    $this->age = $age;
  }
  
  function showInfo(){
    echo "姓名:" . $this->name . " 年龄:" . $this->age;
  }
}

$person = new Person("张三", 20);
$person->showInfo();
Copier après la connexion

Dans le code ci-dessus, nous définissons une classe nommée Person et définissons une méthode __construct dans la classe pour initialiser les attributs name et age. Lors de l'instanciation de la classe Person, nous transmettons "Zhang San" et 20 comme paramètres, afin que les informations personnelles puissent être sorties via la méthode $person->showInfo().

__méthode destruct

__La méthode destruct est une méthode qui est automatiquement appelée lorsque l'objet est détruit. Dans cette méthode, nous pouvons effectuer un travail de nettoyage, comme libérer certaines ressources occupées, etc. De même, si l’on ne définit pas cette méthode, une erreur se produira lors de la destruction de l’objet.

Ce qui suit est un exemple de code :

class Car{
  public $brand;
  
  function __construct($brand){
    $this->brand = $brand;
  }
  
  function run(){
    echo "我开着" . $this->brand . "在马路上飞奔!";
  }
  
  function __destruct(){
    echo $this->brand . "被销毁了!";
  }
}

$car = new Car("宝马");
$car->run();
Copier après la connexion

Dans le code ci-dessus, nous définissons une classe nommée Car et définissons une méthode __destruct dans la classe pour générer des informations lorsqu'un véhicule est détruit. Après avoir instancié la classe Car, nous appelons la méthode $car->run() pour afficher les informations sur le véhicule et afficher les informations de destruction à la fin.

__méthode d'appel

__La méthode d'appel est une méthode qui est automatiquement appelée lorsqu'une méthode qui n'existe pas dans la classe est appelée. Dans cette méthode, nous pouvons appeler dynamiquement une méthode et transmettre des paramètres. Cette méthode est très adaptée pour faire face à certaines situations incertaines lors du développement, telles que l'appel dynamique de méthodes d'exploitation de base de données.

Ce qui suit est un exemple de code :

class Database{
  private $db;
  
  function __construct($host, $user, $password, $dbName){
    $this->db = new mysqli($host, $user, $password, $dbName);
  }
  
  function __call($method, $args){
    if(method_exists($this->db, $method)){
      return call_user_func_array([$this->db, $method], $args);
    }else{
      die("没有找到" . $method . "方法!");
    }
  }
}

$database = new Database("localhost", "root", "password", "test");
$res = $database->query("SELECT * FROM users");

while($row = $res->fetch_assoc()){
  echo $row['name'];
}
Copier après la connexion

Dans le code ci-dessus, nous définissons une classe nommée Database et définissons une méthode __call dans la classe pour appeler dynamiquement la méthode de la classe mysqli. Lorsque nous instancions la classe Database et appelons la méthode query, la méthode query() de la classe mysqli est en fait appelée dynamiquement.

Conclusion

Dans le langage PHP, les méthodes magiques nous fournissent de nombreux outils utiles, tels que la méthode __construct pour initialiser des objets, la méthode __destruct pour le nettoyage, et la méthode __call pour appeler dynamiquement des méthodes, etc. La maîtrise de ces méthodes est très importante pour la programmation orientée objet en 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 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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Décrypter la métaprogrammation Python : des bases aux paradigmes avancés Décrypter la métaprogrammation Python : des bases aux paradigmes avancés Feb 19, 2024 pm 03:30 PM

Bases de la métaprogrammation Python La métaprogrammation Python est la capacité de manipuler dynamiquement le code Python, ce qui fait de Python un langage très puissant. La métaprogrammation peut être implémentée des manières suivantes : Décorateur de classe : Un décorateur de classe est un décorateur qui modifie la définition d'une classe. Il peut être utilisé pour ajouter ou modifier les propriétés et méthodes d'une classe, et peut également être utilisé pour contrôler le processus d'instanciation d'une classe. defadd_method_to_class(cls):defnew_method(self):print("Thisisanewmethod")setattr(cls,"new_method",new_method)returncls@a

Comment suivre l'ordre d'exécution des méthodes magiques PHP ? Comment suivre l'ordre d'exécution des méthodes magiques PHP ? Apr 17, 2024 pm 09:33 PM

L'ordre d'exécution des méthodes magiques PHP suit les règles suivantes : les méthodes magiques avec une priorité élevée sont exécutées en premier. Si la sous-classe et la classe parent définissent des méthodes magiques portant le même nom, la méthode magique de la sous-classe sera exécutée en premier. Si une classe définit à la fois une méthode régulière et une méthode magique portant le même nom, la méthode régulière sera exécutée en premier.

Qu'est-ce qu'une méthode magique ? Comment l'utiliser dans Laravel Qu'est-ce qu'une méthode magique ? Comment l'utiliser dans Laravel Sep 26, 2022 pm 08:21 PM

Qu'est-ce qu'une méthode magique ? Comment l’utiliser dans Laravel ? L'article suivant vous présentera comment appliquer les méthodes magiques PHP dans Laravel. J'espère qu'il vous sera utile !

Développement PHP : utilisez des méthodes de réflexion et de magie pour réaliser une génération automatique de code et des appels dynamiques Développement PHP : utilisez des méthodes de réflexion et de magie pour réaliser une génération automatique de code et des appels dynamiques Jun 15, 2023 pm 04:16 PM

Dans le développement PHP, les méthodes de réflexion et magiques sont deux techniques couramment utilisées. Lorsque nous devons générer automatiquement du code ou appeler dynamiquement certaines fonctions, les méthodes de réflexion et de magie peuvent rendre notre code plus flexible et plus efficace. Dans cet article, nous explorerons comment utiliser les méthodes de réflexion et de magie pour réaliser une génération automatique de code et un appel dynamique. Reflection est un outil puissant fourni par PHP, qui peut nous aider à obtenir des informations telles que des classes, des méthodes et des propriétés lorsque le programme est en cours d'exécution. Grâce à la réflexion, nous pouvons obtenir dynamiquement des informations telles que des méthodes, des propriétés et des annotations d'une classe ou d'un objet, afin que

Méthodes magiques pour les fonctions PHP Méthodes magiques pour les fonctions PHP May 19, 2023 am 08:06 AM

PHP est un langage de script côté serveur développé sur la base du langage C, largement utilisé dans le développement Web. Les fonctions sont l'un des composants les plus basiques et les plus couramment utilisés dans les programmes. PHP fournit également de nombreuses méthodes magiques liées aux fonctions, qui peuvent aider les développeurs à mieux tirer parti des fonctions. Dans cet article, nous présenterons les méthodes magiques des fonctions PHP et leur utilisation. __construct()__construct() est l'une des méthodes magiques les plus couramment utilisées en PHP. Elle est automatiquement appelée lors de la création d'un objet pour l'initialisation.

Vous présente 16 méthodes magiques PHP Vous présente 16 méthodes magiques PHP May 16, 2022 pm 08:45 PM

Qu'est-ce qu'une méthode magique ? Cet article vous présentera 16 méthodes magiques que les développeurs PHP doivent connaître. J'espère que cela vous sera utile !

Conseils d'experts PHP : maîtrisez les fonctions cachées et les méthodes magiques Conseils d'experts PHP : maîtrisez les fonctions cachées et les méthodes magiques May 09, 2024 am 10:09 AM

Les fonctions cachées et les méthodes magiques de PHP, telles que CLASS et __call(), offrent de puissantes capacités pour améliorer la flexibilité du code : les fonctions cachées effectuent des opérations spéciales, telles que l'obtention d'espaces de noms et de chemins de fichiers. Les méthodes magiques gèrent des cas particuliers tels que les appels de méthodes non définis. La gestion personnalisée des exceptions et la lecture simplifiée des propriétés sont des exemples pratiques. Utilisez ces conseils pour écrire du code PHP plus flexible et plus concis.

Méthodes magiques : comprendre __construct, __destruct et d'autres méthodes de base en PHP Méthodes magiques : comprendre __construct, __destruct et d'autres méthodes de base en PHP Jun 19, 2023 pm 11:22 PM

Méthodes magiques : comprenez les méthodes de base telles que __construct et __destruct en PHP. Dans le langage PHP, il existe des méthodes spéciales appelées « méthodes magiques », notamment __construct, __destruct, etc. Ces méthodes jouent un rôle important dans la programmation orientée objet en PHP. Cet article expliquera le rôle et l'application pratique de ces méthodes. La méthode __construct __construct est une méthode très importante, elle est en PHP

See all articles