Maison développement back-end tutoriel php Apprenez à utiliser huit constantes magiques couramment utilisées en PHP (exemples détaillés)

Apprenez à utiliser huit constantes magiques couramment utilisées en PHP (exemples détaillés)

Nov 03, 2021 pm 03:17 PM
php 常量 魔术常量

Dans l'article précédent "Vous faire comprendre la définition et l'acquisition de la valeur des constantes PHP", nous avons présenté en détail les connaissances de base des constantes en PHP. Dans cet article, examinons les connaissances pertinentes des constantes magiques dans. PHP. , j'espère que cela aidera tout le monde !

Apprenez à utiliser huit constantes magiques couramment utilisées en PHP (exemples détaillés)

Dans l'article précédent, nous avons découvert les connaissances de base de la définition simple et de l'acquisition de constantes en PHP, ainsi que quelques méthodes magiques. Examinons ensuite les connaissances pertinentes sur les constantes magiques, ce qu'elles sont et quelles sont les principales utilisations des constantes magiques.

Que sont les constantes magiques ?

Les constantes magiques ne sont pas des constantes pour être précis Comme nous l'avons introduit dans l'article précédent, les constantes ne peuvent pas être modifiées une fois définies. Mais les constantes magiques sont des constantes prédéfinies par PHP. Ces constantes prédéfinies peuvent changer en raison des changements de leur emplacement.

De nombreuses constantes prédéfinies sont fournies par PHP dans n'importe quel script. Différentes constantes ont différentes bibliothèques d'extensions. Les constantes magiques peuvent être comprises comme des constantes spéciales prédéfinies.

Le format d'écriture des constantes magiques est généralement composé de deux traits de soulignement (__) commençant par deux traits de soulignement et se terminant par deux traits de soulignement, tels que : __LINE__, __FILE__ code>, etc. attendez. En ce qui concerne le format d'écriture, vous devez savoir que les constantes magiques ne sont pas sensibles à la casse, mais essayez d'utiliser des majuscules lors de l'écriture. <code>__)开头两个下划线结尾,比如:__LINE____FILE__等等。讲到书写格式的话,需要知道,魔术常量不区分大小写,但是尽量书写的时候还是采用大写的形式。

魔术常量的使用

PHP的运行环境中提供了八个魔术常量,就像上文中说的,虽然被叫做常量,但准确来说不算是常量,他们的值随着代码中的变化而改变,接下来我们分别来看一下这八个魔术变量。

1.<strong><span style="font-size: 16px;">__LINE__ </span></strong> 表示文件中当前的行号

接下来我们通过示例来看一下__LINE__ 魔术常量的使用,并且看一下随着位置的变化魔术常量的值有什么变化。

示例如下:

<?php
echo &#39;这是第 " &#39; . __LINE__ . &#39; " 行<br/>&#39;;
echo &#39;这是第 " &#39; . __LINE__ . &#39; " 行<br/>&#39;;
echo &#39;---------------<br/>&#39;;
echo &#39;这是第 " &#39; . __LINE__ . &#39; " 行&#39;;
?>
Copier après la connexion

输出结果:

Apprenez à utiliser huit constantes magiques couramment utilisées en PHP (exemples détaillés)

在上述示例中,我们通过魔术变量__LINE__就能够获取当前代码所在位置的行数。

其中需要注意的是:我们能够发现,当代码所在的位置不同,其所输出的结果也是不同的。所以我们上文中说了魔术常量并不能算是常量,它的值随着代码的变化而改变。我们接着往下看:

2.__FILE__ 表示文件的绝对路径

通过__FILE__能够获取文件的绝对路径,并且这个路径包含了文件名。其中需要注意的是,如果该魔术常量用在了包含文件中,那么返回的结果是被包含的文件名。

下面我们通过示例来看一下__FILE__的使用,示例如下:

<?php
echo &#39;该文件位于 " &#39; . __FILE__ . &#39; " &#39;;
?>
Copier après la connexion

输出结果:

Apprenez à utiliser huit constantes magiques couramment utilisées en PHP (exemples détaillés)

在上述示例中我们便是通过__FILE__完成了对文件绝对路径的获取。

3.__DIR__ 用于表示文件所在目录

通过__DIR__能够获取文件所在的目录,这个文件所在的目录与__FILE__获取文件的绝对路径还是不一样的,文件所在的目录是不带有当前文件的文件名的。也可以把该魔术常量理解为 dirname(__FILE__)

下面我们通过示例来看一下__DIR__魔术常量的使用,示例如下:

<?php
echo &#39;该文件位于 " &#39; . __DIR__ . &#39; " &#39;;
echo  dirname(__FILE__);
?>
Copier après la connexion

输出结果:

Apprenez à utiliser huit constantes magiques couramment utilisées en PHP (exemples détaillés)

上述示例中我们通过两种方法,都获取到了当前文件所在的目录,一个是通过__DIR__魔术常量,另一个是dirname(__FILE__),它们俩能够达到的效果是相同的。

4.__FUNCTION__ 用于获取当前函数名或方法名

通过__FUNCTION__

Utilisation de constantes magiques


PHP fournit huit constantes magiques dans l'environnement d'exécution, bien qu'elles soient appelées constantes, elles ne sont pas considérées comme des constantes pour être précis. Leurs valeurs varient en fonction du code. Changements dus aux changements, examinons ces huit variables magiques séparément. Apprenez à utiliser huit constantes magiques couramment utilisées en PHP (exemples détaillés)


1.

🎜🎜<span style="font-size: 16px;">__LINE__ 🎜🎜🎜 représente le numéro de ligne actuel dans le fichier 🎜🎜🎜🎜 Ensuite, regardons l'utilisation des constantes magiques __LINE__ à travers des exemples, et voyons comment la magie change avec le position Qu'arrive-t-il à la valeur de la constante ? 🎜🎜L'exemple est le suivant : 🎜
<?php
function test() {
 echo &#39;通过__FUNCTION__获取的函数名为:&#39; . __FUNCTION__ ;
}
test();
?>
Copier après la connexion
🎜Résultat de sortie : 🎜🎜🎜Apprenez à utiliser huit constantes magiques couramment utilisées en PHP (exemples détaillés)🎜🎜Dans l'exemple ci-dessus, nous pouvons obtenir le numéro de ligne de l'emplacement actuel du code grâce à la variable magique __LINE__. 🎜🎜Ce qu'il faut noter est : nous pouvons constater que lorsque l'emplacement du code est différent, les résultats de sortie sont également différents. Nous avons donc dit plus haut que les constantes magiques ne sont pas considérées comme des constantes et que leurs valeurs changent à mesure que le code change. Regardons en bas : 🎜🎜🎜2.__FILE__ représente le chemin absolu du fichier 🎜🎜🎜🎜 via __FILE__ Le chemin absolu du fichier peut être obtenu, et ce chemin contient le nom du fichier. Il est à noter que si la constante magique est utilisée dans un fichier inclus, le résultat renvoyé est le nom du fichier inclus. 🎜🎜Jetons un coup d'œil à l'utilisation de __FILE__ à travers un exemple L'exemple est le suivant : 🎜
<?php
class test {
 function _print() {
  echo &#39;通过__CLASS__获取的类名为:&#39; . __CLASS__ . "<br>";
  echo &#39;通过__FUNCTION__获取的函数名为:&#39; . __FUNCTION__ ;
 }
}
$t = new test();
$t->_print();
?>
Copier après la connexion
Copier après la connexion
🎜Résultat de sortie : 🎜🎜🎜Apprenez à utiliser huit constantes magiques couramment utilisées en PHP (exemples détaillés)🎜🎜Dans l'exemple ci-dessus, nous utilisons __FILE__ pour obtenir le chemin absolu du fichier. 🎜🎜🎜3.__DIR__ est utilisé pour indiquer le répertoire où se trouve le fichier🎜🎜🎜🎜🎜peut être obtenu via 🎜 __DIR__🎜 Le répertoire où se trouve le fichier est toujours différent du chemin absolu utilisé par __FILE__ pour obtenir le fichier. Le répertoire où se trouve le fichier n'a pas le nom de fichier du fichier actuel. Cette constante magique peut également être comprise comme dirname(__FILE__). 🎜🎜Jetons un coup d'œil à l'utilisation de la constante magique __DIR__ à travers un exemple. L'exemple est le suivant : 🎜
<?php
class Base {
 public function sayHello() {
  echo &#39;Hello &#39;;
 }
}
trait SayWorld {
 public function sayHello() {
  parent::sayHello();
  echo &#39;World!&#39;;
 }
}
class MyHelloWorld extends Base {
 use SayWorld;
}
$o = new MyHelloWorld();
$o->sayHello();
?>
Copier après la connexion
Copier après la connexion
🎜Résultat de sortie : 🎜🎜🎜Apprenez à utiliser huit constantes magiques couramment utilisées en PHP (exemples détaillés)🎜🎜Dans l'exemple ci-dessus, nous avons obtenu le répertoire où se trouve le fichier actuel via deux méthodes, l'une est grâce à la constante magique __DIR__, l'autre est dirname(__FILE__), les deux peuvent obtenir le même effet. 🎜🎜🎜4.__FUNCTION__ est utilisé pour obtenir le nom de la fonction ou le nom de la méthode actuel🎜🎜🎜🎜peut être obtenu via __FUNCTION__< /code> Le nom de la fonction ou de la méthode actuelle. Examinons ensuite l'utilisation de la constante magique __FUNCTION__ à travers un exemple. 🎜🎜L'exemple est le suivant : 🎜<div class="code" style="position:relative; padding:0px; margin:0px;"><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>&lt;?php function testMethod() { echo &amp;#39;当前的函数名为:&amp;#39; . __METHOD__ . PHP_EOL . &amp;#39;&lt;br/&gt;&amp;#39;; } class TestMethodClass { function testMethod1() { echo &amp;#39;当前的方法名和类名为:&amp;#39; . __METHOD__ . PHP_EOL; } } testMethod(); $test = new TestMethodClass(); $test-&gt;testMethod1(); ?&gt;</pre><div class="contentsignin">Copier après la connexion</div></div><div class="contentsignin">Copier après la connexion</div></div>🎜Résultat de sortie : 🎜🎜🎜🎜🎜🎜Grâce à l'exemple ci-dessus, nous savons que __FUNCTION__ peut obtenir le nom de la fonction actuelle. 🎜🎜<p><strong><span style="font-size: 16px;">5.<code>__CLASS__ 用于获取当前的类名

通过__CLASS__可以用于获取当前的类名,齐总也包括了当前类的作用区域或命名空间。接下来我们通过示例来看一下__CLASS__的使用。

示例如下:

<?php
class test {
 function _print() {
  echo &#39;通过__CLASS__获取的类名为:&#39; . __CLASS__ . "<br>";
  echo &#39;通过__FUNCTION__获取的函数名为:&#39; . __FUNCTION__ ;
 }
}
$t = new test();
$t->_print();
?>
Copier après la connexion
Copier après la connexion

输出结果:

Apprenez à utiliser huit constantes magiques couramment utilisées en PHP (exemples détaillés)

通过上述示例已经了解在PHP中可以通过__CLASS__来获取当前的类名。

6.__TRAIT__ 当前的trait名称

通过__TEAIT__能够表示当前的trait名称,这其中包括了trait的作用区域或者命名空间。接下来我们通过示例来看一下__TRAIT__的使用。

示例如下:

<?php
class Base {
 public function sayHello() {
  echo &#39;Hello &#39;;
 }
}
trait SayWorld {
 public function sayHello() {
  parent::sayHello();
  echo &#39;World!&#39;;
 }
}
class MyHelloWorld extends Base {
 use SayWorld;
}
$o = new MyHelloWorld();
$o->sayHello();
?>
Copier après la connexion
Copier après la connexion

输出结果:

Apprenez à utiliser huit constantes magiques couramment utilisées en PHP (exemples détaillés)

7.__METHOD__ 当前的方法名

通过__METHOD__能够获取当前的方法名,其中也包括类名,接下来我们通过示例来看一下__METHOD__的使用方法,示例如下:

<?php
function testMethod()
{
    echo &#39;当前的函数名为:&#39; . __METHOD__ . PHP_EOL . &#39;<br/>&#39;;
}
class TestMethodClass
{
    function testMethod1()
    {
        echo &#39;当前的方法名和类名为:&#39; . __METHOD__ . PHP_EOL; 
    }
}
testMethod();
$test = new TestMethodClass();
$test->testMethod1();
?>
Copier après la connexion
Copier après la connexion

输出结果:

Apprenez à utiliser huit constantes magiques couramment utilisées en PHP (exemples détaillés)

上述示例中,我们通过__METHOD__获取了函数名和方法名。其中方法名中包括了类名。

8.__NAMESPACE__ 当前文件的命名空间名称

通过__NAMESPACE__可以获取当前文件的命名空间名称,接下来我们通过示例来看一下,示例如下:

<?php
namespace MyProject;
echo &#39;命名空间为:"&#39;, __NAMESPACE__, &#39;"&#39;; 
?>
Copier après la connexion

输出结果:

Apprenez à utiliser huit constantes magiques couramment utilisées en PHP (exemples détaillés)

到此我们便是通过示例将八种魔术常量了解了一下。

大家如果感兴趣的话,可以点击《PHP视频教程》进行更多关于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.

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)

Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

Comment configurer Visual Studio Code (VS Code) pour le développement PHP Comment configurer Visual Studio Code (VS Code) pour le développement PHP Dec 20, 2024 am 11:31 AM

Visual Studio Code, également connu sous le nom de VS Code, est un éditeur de code source gratuit – ou environnement de développement intégré (IDE) – disponible pour tous les principaux systèmes d'exploitation. Avec une large collection d'extensions pour de nombreux langages de programmation, VS Code peut être c

7 fonctions PHP que je regrette de ne pas connaître auparavant 7 fonctions PHP que je regrette de ne pas connaître auparavant Nov 13, 2024 am 09:42 AM

Si vous êtes un développeur PHP expérimenté, vous aurez peut-être le sentiment d'y être déjà allé et de l'avoir déjà fait. Vous avez développé un nombre important d'applications, débogué des millions de lignes de code et peaufiné de nombreux scripts pour réaliser des opérations.

Comment analysez-vous et traitez-vous HTML / XML dans PHP? Comment analysez-vous et traitez-vous HTML / XML dans PHP? Feb 07, 2025 am 11:57 AM

Ce tutoriel montre comment traiter efficacement les documents XML à l'aide de PHP. XML (Language de balisage extensible) est un langage de balisage basé sur le texte polyvalent conçu à la fois pour la lisibilité humaine et l'analyse de la machine. Il est couramment utilisé pour le stockage de données et

Expliquez les jetons Web JSON (JWT) et leur cas d'utilisation dans les API PHP. Expliquez les jetons Web JSON (JWT) et leur cas d'utilisation dans les API PHP. Apr 05, 2025 am 12:04 AM

JWT est une norme ouverte basée sur JSON, utilisée pour transmettre en toute sécurité des informations entre les parties, principalement pour l'authentification de l'identité et l'échange d'informations. 1. JWT se compose de trois parties: en-tête, charge utile et signature. 2. Le principe de travail de JWT comprend trois étapes: la génération de JWT, la vérification de la charge utile JWT et l'analyse. 3. Lorsque vous utilisez JWT pour l'authentification en PHP, JWT peut être généré et vérifié, et les informations sur le rôle et l'autorisation des utilisateurs peuvent être incluses dans l'utilisation avancée. 4. Les erreurs courantes incluent une défaillance de vérification de signature, l'expiration des jetons et la charge utile surdimensionnée. Les compétences de débogage incluent l'utilisation des outils de débogage et de l'exploitation forestière. 5. L'optimisation des performances et les meilleures pratiques incluent l'utilisation des algorithmes de signature appropriés, la définition des périodes de validité raisonnablement,

Programme PHP pour compter les voyelles dans une chaîne Programme PHP pour compter les voyelles dans une chaîne Feb 07, 2025 pm 12:12 PM

Une chaîne est une séquence de caractères, y compris des lettres, des nombres et des symboles. Ce tutoriel apprendra à calculer le nombre de voyelles dans une chaîne donnée en PHP en utilisant différentes méthodes. Les voyelles en anglais sont a, e, i, o, u, et elles peuvent être en majuscules ou en minuscules. Qu'est-ce qu'une voyelle? Les voyelles sont des caractères alphabétiques qui représentent une prononciation spécifique. Il y a cinq voyelles en anglais, y compris les majuscules et les minuscules: a, e, i, o, u Exemple 1 Entrée: String = "TutorialSpoint" Sortie: 6 expliquer Les voyelles dans la chaîne "TutorialSpoint" sont u, o, i, a, o, i. Il y a 6 yuans au total

Expliquez la liaison statique tardive en PHP (statique: :). Expliquez la liaison statique tardive en PHP (statique: :). Apr 03, 2025 am 12:04 AM

Liaison statique (statique: :) ​​implémente la liaison statique tardive (LSB) dans PHP, permettant à des classes d'appel d'être référencées dans des contextes statiques plutôt que de définir des classes. 1) Le processus d'analyse est effectué au moment de l'exécution, 2) Recherchez la classe d'appel dans la relation de succession, 3) il peut apporter des frais généraux de performance.

Quelles sont les méthodes PHP Magic (__construct, __ destruct, __ call, __get, __set, etc.) et fournir des cas d'utilisation? Quelles sont les méthodes PHP Magic (__construct, __ destruct, __ call, __get, __set, etc.) et fournir des cas d'utilisation? Apr 03, 2025 am 12:03 AM

Quelles sont les méthodes magiques de PHP? Les méthodes magiques de PHP incluent: 1. \ _ \ _ Construct, utilisé pour initialiser les objets; 2. \ _ \ _ Destruct, utilisé pour nettoyer les ressources; 3. \ _ \ _ Appel, gérer les appels de méthode inexistants; 4. \ _ \ _ GET, Implémentez l'accès à l'attribut dynamique; 5. \ _ \ _ SET, Implémentez les paramètres d'attribut dynamique. Ces méthodes sont automatiquement appelées dans certaines situations, améliorant la flexibilité et l'efficacité du code.

See all articles