Maison > développement back-end > tutoriel php > Explication détaillée des exemples de constantes magiques en php

Explication détaillée des exemples de constantes magiques en php

怪我咯
Libérer: 2023-03-07 18:02:02
original
1708 Les gens l'ont consulté

Que sont les constantes magiques ?

Lorsque nous expliquons les constantes PHP, nous savons que la plupart des constantes en PHP sont inchangées, mais il existe 8 constantes prédéfinies qui changeront avec le changement de leur emplacement dans le code. Ces 8 constantes sont. appelée constante magique. Ces constantes spéciales ne sont pas sensibles à la casse.

Les « constantes magiques » de PHP sont les suivantes :

函数 检测类型
__LINE__ 文件中的当前行号。
__FILE__ 文件的完整路径和文件名。如果用在被包含文件中,则返回被包含的文件名。自 PHP 4.0.2 起,__FILE__ 总是包含一个绝对路径(如果是符号连接,则是解析后的绝对路径),而在此之前的版本有时会包含一个相对路径。
__DIR__ 文件所在的目录。如果用在被包括文件中,则返回被包括的文件所在的目录。它等价于 dirname(__FILE__)。除非是根目录,否则目录中名不包括末尾的斜杠。(PHP 5.3.0中新增) 
__FUNCTION__ 函数名称(PHP 4.3.0 新加)。自 PHP 5 起本常量返回该函数被定义时的名字(区分大小写)。在 PHP 4 中该值总是小写字母的。
__CLASS__ 类的名称(PHP 4.3.0 新加)。自 PHP 5 起本常量返回该类被定义时的名字(区分大小写)。在 PHP 4 中该值总是小写字母的。类名包括其被声明的作用区域(例如 FooBar)。注意自 PHP 5.4 起 __CLASS__ 对 trait 也起作用。当用在 trait 方法中时,__CLASS__ 是调用 trait 方法的类的名字
__TRAIT__ Trait 的名字(PHP 5.4.0 新加)。自 PHP 5.4 起此常量返回 trait 被定义时的名字(区分大小写)。Trait 名包括其被声明的作用区域(例如 FooBar)
__METHOD__ 类的方法名(PHP 5.0.0 新加)。返回该方法被定义时的名字(区分大小写)。
__NAMESPACE__ 当前命名空间的名称(区分大小写)。此常量是在编译时定义的(PHP 5.3.0 新增)。
.

Explication détaillée des exemples de constantes magiques en phpLe "__" dans le tableau ci-dessus est constitué de deux traits de soulignement, et non d'un "_".

Les constantes magiques sont souvent utilisées pour obtenir des informations sur l'environnement actuel ou pour enregistrer des journaux.

Permettez-moi de jeter un œil à l'utilisation de ces constantes magiques :

__LINE__ Obtenez le numéro de ligne actuel dans le fichier.

Exemple

<?PHP
header("content-type:text/html;charset=utf-8");
echo "这是第 ". __LINE__ ."行";
echo "<br/>";
?>
Copier après la connexion

Résultat de l'exécution du code :

Explication détaillée des exemples de constantes magiques en php

__FILE__ Obtenez le chemin complet et le nom du fichier de le fichier , s'il est utilisé dans un fichier inclus, renvoie le nom du fichier inclus.

Explication détaillée des exemples de constantes magiques en php

__DIR__ Obtenez 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.

Instance

<?php
header("content-type:text/html;charset=utf-8");
echo "该文件位于 ". __DIR__ ."文件夹下";
echo "<br/>";
?>
Copier après la connexion

Résultat de l'exécution du code :

Explication détaillée des exemples de constantes magiques en php

__FUNCTION__ Récupère le nom de la fonction lorsqu'elle est défini (sensible à la casse), seul le nom de la fonction

instance

<?php
header("content-type:text/html;charset=utf-8");
function Test() {
    echo  "该函数名为:". __FUNCTION__ ;
    echo "<br/>";
}
Test();
?>
Copier après la connexion

le résultat de l'exécution du code est renvoyé :

Explication détaillée des exemples de constantes magiques en php

__CLASS__ Récupère le nom de la classe lors de sa définition (sensible à la casse)

instance

<?php
header("content-type:text/html;charset=utf-8");
class test {
    function show() {
        echo "该类名为:". __CLASS__ . "<br>";
        echo "该函数名为:". __FUNCTION__ ;
        echo "<br/>";
    }
}
$t = new test();
$t->show();
?>
Copier après la connexion

Code en cours d'exécution résultat :

Explication détaillée des exemples de constantes magiques en php

__METHOD__ Récupère le nom de la méthode lorsqu'elle est définie (sensible à la casse). Si la fonction est dans une classe, renvoie le nom de la méthode de la classe, <🎜. >

C'est-à-dire : nom de la classe :: Nom de la méthode.

Instance

<?php
    header("content-type:text/html;charset=utf-8");
    function test1() {
        echo  "该函数名为:". __METHOD__ ;
        echo "<br/>";
    }
    test1();
    ?>
    <?php
    class chhua{
        function test(){
            //返回类方法的名称
            echo __METHOD__;
        }
    }
    $e=new chhua();
    $e->test();//输出:chhua::test
    ?>
Copier après la connexion
Résultat de l'exécution du code :

Explication détaillée des exemples de constantes magiques en php

__NAMESPACE__ Le nom de l'espace de noms actuel (sensible à la casse)

<?php
namespace MyProject;

echo &#39;"&#39;, __NAMESPACE__, &#39;"&#39;; // 输出 "MyProject"
?>
Copier après la connexion
Résultat de l'exécution du code :

Explication détaillée des exemples de constantes magiques 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!

Étiquettes associées:
source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal