PHP魔术常量集合-面试会问的

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_36431166/article/details/84206457
<?php

echo __LINE__; //当前行

echo __FILE__;//文件的完整路径和文件名

echo __DIR__;//文件所在目录

echo __FUNCTION__;//PHP4.3.0新增的,返回该函数在定义时的名称

echo __CLASS__;//PHP4.3.0新增的,类的名称(区分大小写)

echo __METHOD__;//PHP 5.0.0 新增的,类的方法名称(区分大小写)

echo __NAMESPACE__;//PHP 5.3.0新增的,当前命名空间的名称(区分大小写)

?>

还有一个比较特殊的,叫做:__TRAIT__ PHP5.4.0新增的

解释:从基类继承的成员被插入的 SayWorld Trait 中的 MyHelloWorld 方法所覆盖。其行为 MyHelloWorld 类中定义的方法一致。优先顺序是当前类中的方法会覆盖 trait 方法,而 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();
?>

最后输出:Hello World!

猜你喜欢

转载自blog.csdn.net/qq_36431166/article/details/84206457