PHP magique variables
Tout script PHP pour exécuter il fournit un certain nombre de constantes prédéfinies.
Cependant, de nombreuses constantes sont définies par diverses extensions, et seulement chargés lorsque ces extensions apparaîtront, ou chargés dynamiquement, ou a été inclus au moment de la compilation en elle.
Il y a huit constantes magiques et leurs valeurs comme ils changent de position dans le code est modifié.
Par exemple __LINE__ valeur sur laquelle il est dépendant de la ligne dans le script de décider. Ces constantes spéciales sont insensibles à la casse, comme suit:
__LINE__
Les fichiers dans le numéro de la ligne actuelle.
exemple:
<?php echo '这是第 “ ' . __LINE__ . ' ” 行'; ?>
L'exemple ci-dessus sortie est:
这是第 “ 2 ” 行
__FILE__
Le chemin d'accès complet et le nom du fichier. Si elle est utilisée dans le fichier inclus, puis retourner le nom du fichier à inclure.
Depuis PHP 4.0.2 partir, __ FILE__ contient toujours un chemin absolu (si elle est un lien symbolique, il est un chemin absolu analysé), et dans cette version précédente contient parfois un chemin relatif.
exemple:
<?php echo '该文件位于 “ ' . __FILE__ . ' ” '; ?>
L'exemple ci-dessus sortie est:
该文件位于 “ E:\wamp\www\test\index.php ”
__DIR__
fichier de catalogue est situé. Si inclus dans le fichier, le répertoire est inclus dans le dossier est retourné.
Il est équivalent à dirname (__ FILE__). À moins qu'il est le répertoire racine, ou le nom de répertoire ne comprend pas une barre oblique à la fin. (PHP 5.3.0 add)
exemple:
<?php echo '该文件位于 “ ' . __DIR__ . ' ” '; ?>
L'exemple ci-dessus sortie est:
该文件位于 “ E:\wamp\www\test ”
__FUNCTION__
Nom de la fonction (de 4.3.0 ajouté PHP). Depuis PHP cette constante renvoie le nom de la fonction telle qu'elle a été déclarée 5 cas (sensibles à la casse). En PHP 4 sa valeur est toujours en minuscules.
exemple:
<?php function test() { echo '函数名为:' . __FUNCTION__ ; } test(); ?>
L'exemple ci-dessus sortie est:
函数名为:test
__CLASS__
Nom de la classe (PHP 4.3.0 ajouté). Depuis PHP ce retourne le nom de la constante de classe est défini comme le temps de 5 (sensible à la casse).
En PHP 4 sa valeur est toujours en minuscules. Nom de la classe, y compris le rôle de la zone qui est déclarée (comme Foo \ Bar). Remarque à partir de PHP 5.4 partir __CLASS__ de trait jouent également un rôle. Lorsqu'ils sont utilisés dans les méthodes de trait, __ méthode class__ de trait est d'appeler le nom de la classe.
exemple:
<?php <?php class test { function _print() { echo '类名为:' . __CLASS__ . "<br>"; echo '函数名为:' . __FUNCTION__ ; } } $t = new test(); $t->_print(); ?>
L'exemple ci-dessus sortie est:
类名为:test 函数名为:_print
__TRAIT__
Nom Trait (de 5.4.0 ajouté PHP). A partir de PHP 5.4.0, PHP implémente une méthode de réutilisation de code, appelés traits.
nom Trait y compris le rôle de la zone qui est déclarée (comme Foo \ Bar).
Est couvert de la classe de base hérite des membres insérés SayWorld Trait dans la méthode MyHelloWorld. comportement MyHelloWorld approche cohérente définie dans la classe. La priorité est la méthode actuelle dans une classe remplace la méthode trait, la méthode et trait qui couvre la méthode de classe de base.
<?php class Base { public function sayHello() { echo 'Hello '; } } trait SayWorld { public function sayHello() { parent::sayHello(); echo 'World!'; } } class MyHelloWorld extends Base { use SayWorld; } $o = new MyHelloWorld(); $o->sayHello(); ?>
La sortie par exemple de volonté ci-dessus:
Hello World!
__METHOD__
Méthodes de classes (PHP 5.0.0 ajouté). Cette méthode retourne le nom tel qu'il a été déclaré (sensible à la casse).
exemple:
<?php function test() { echo '函数名为:' . __METHOD__ ; } test(); ?>
L'exemple ci-dessus sortie est:
函数名为:test
__NAMESPACE__
Nom de l'espace de noms courant (sensible à la casse). Cette constante est définie au moment de la compilation (PHP 5.3.0 ajouté).
exemple:
<?php namespace MyProject; echo '命名空间为:"', __NAMESPACE__, '"'; // 输出 "MyProject" ?>
L'exemple ci-dessus sortie est:
命名空间为:"MyProject"