PHP魔术变量的运用(笔记)

PHP向它运行的任何脚本提供了大量的预定义常量

__LINE__

文件中的当前行号

<?php
     echo '这是第"'.__LINE__.'"行';
?>

__FILE__

文件的完整路径和文件名,如果用在被包含的文件中,则返回被包含的文件名

<?php
     echo '该文件位于"'.__FILE__.'"';
?>

__DIR__

文件所在的目录,被用在包含文件中,则返回包含的文件的所在目录

<?php
     echo '该文件位于"'.__DIR__.'"';
?>

__FUNCTION__

返回被定义的名字(函数)

<?php
function test() {
     echo '函数名为:'.__FUNCTION__ ;
}
test();
?>

__CLASS__

返回类被定义的名字(区分大小写)

<?php
class test {
     function _print() {
          echo '类名为:' . __CLASS__ . "<br>";
          echo '函数名为:' . __FUNCTION__ ;
     }
}
$t = new test();
$t->_print();
?>

__TRAIT__

代码复用的一个方法

<?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();
?>

__METHOD__

返回该方法被定义时的名字(区分大小写)

<?php
function test() {
     echo '函数名为:' . __METHOD__ ;
}
test();
?>

__NAMESPACE__

当前命名空间的名称(区分大小写)

<?php
namespace MyProject;
echo '命名空间为:"', __NAMESPACE__, '"'; // 输出 "MyProject"
?>

从上打下依次运行,敲得很累所以就整合在一起了.....

<?php
echo '这是第 “ ' . __LINE__ . ' ” 行';
echo '该文件位于 “ ' . __FILE__ . ' ” ';
echo '该文件位于 “ ' . __DIR__ . ' ” ';
function test() {
     echo '函数名为:' . __FUNCTION__ ;
}
test();
class test {
     function _print() {
          echo '类名为:' . __CLASS__ . "<br>";
          echo '函数名为:' . __FUNCTION__ ;
     }
}
$t = new test();
$t->_print();
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();
function test() {
     echo '函数名为:' . __METHOD__ ;
}
test();
namespace MyProject;
     echo '命名空间为:"', __NAMESPACE__, '"'; // 输出 "MyProject"
?>
点赞

发表评论

电子邮件地址不会被公开,只有你知道( ̄▽ ̄)"