Maison >développement back-end >Problème PHP >que signifie la magie php

que signifie la magie php

藏色散人
藏色散人original
2021-03-11 10:18:572115parcourir

La magie en PHP a deux significations, à savoir : 1. Fait référence aux méthodes magiques. PHP réserve toutes les méthodes de classe commençant par deux traits de soulignement comme méthodes magiques ; 2. Fait référence aux constantes magiques sur lesquelles PHP opère un grand nombre. de constantes prédéfinies sont fournies pour tout script.

que signifie la magie php

L'environnement d'exploitation de cet article : système windows7, version PHP7.1, ordinateur DELL G3

Méthode magique

PHP réserve toutes les méthodes de classe commençant par __ (deux traits de soulignement) comme méthodes magiques. Par conséquent, lors de la définition des méthodes de classe, à l'exception des méthodes magiques ci-dessus, il est recommandé de ne pas les préfixer par __.

__construct(), __destruct(), __call(), __callStatic(), __get(), __set(), __isset(), __unset(), __sleep(), __wakeup(), __serialize(), Les méthodes telles que __unserialize(), __toString(), __invoke(), __set_state(), __clone() et __debugInfo() sont appelées méthodes Magic en PHP. Vous ne pouvez pas utiliser ces noms de méthodes pour nommer vos propres méthodes de classe, sauf si vous souhaitez utiliser leur fonctionnalité magique.

Remarque : toutes les méthodes magiques doivent être déclarées publiques

Constantes magiques

PHP fournit un grand nombre de constantes prédéfinies à tout script qu'il exécute. Cependant, de nombreuses constantes sont définies par différentes bibliothèques d'extensions et n'apparaîtront que lorsque ces bibliothèques d'extensions seront chargées, soit dynamiquement, soit incluses au moment de la compilation.

Il existe huit constantes magiques dont les valeurs changent en fonction de leur position dans le code. Par exemple, la valeur de __LINE__ dépend de la ligne dans laquelle elle se trouve dans le script. Ces constantes spéciales ne sont pas sensibles à la casse, comme suit :

Plusieurs "constantes magiques" PHP

__LINE__ : Le numéro de ligne actuel dans le fichier.

__FILE__ : Le chemin complet et le nom du fichier. S'il est utilisé dans un fichier inclus, renvoie le nom du fichier inclus.

__DIR__ : Le répertoire où se trouve le fichier. S'il est utilisé dans un fichier inclus, renvoie le répertoire où se trouve le fichier inclus. C'est équivalent à dirname(__FILE__). Les noms de répertoire n'incluent pas la barre oblique finale, sauf s'il s'agit du répertoire racine.

__FUNCTION__ : Le nom de la fonction actuelle. Une fonction anonyme est {closure}.

__CLASS__ : Le nom de la classe actuelle. Le nom de la classe inclut la portée dans laquelle elle est déclarée (par exemple FooBar). Notez que depuis PHP 5.4, __CLASS__ fonctionne également pour les traits. Lorsqu'il est utilisé dans une méthode de trait, __CLASS__ est le nom de la classe qui appelle la méthode de trait.

__TRAIT__ : Nom du trait. Le nom du trait inclut la portée dans laquelle il est déclaré (par exemple FooBar).

__METHOD__ : Le nom de la méthode de la classe.

__NAMESPACE__ : Le nom de l'espace de noms actuel.

ClassName::class : nom complet de la classe, voir ::class.

Voir get_class() get_object_vars(), file_exists() et function_exists().

[Apprentissage recommandé : "Tutoriel vidéo 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