php中__METHOD__和_FUNCTION__的区别

楚天乐 1050 0 条

话不多说,一段代码实验下

<?php
class A{
    public function a1(){
        echo __FUNCTION__;
        echo "\n";
        echo __METHOD__;
         echo "\n\n";
    }

    public static function a2(){
        echo __FUNCTION__;
        echo "\n";
        echo __METHOD__;
        echo "\n\n";
    }
}

function a3(){
    echo __FUNCTION__;
    echo "\n";
    echo __METHOD__;
    echo "\n\n";
}

$a = new A();
$a->a1();
A::a2();
a3();

输出如下

a1
A::a1

a2
A::a2

a3
a3

结论

  • 对于类成员函数,METHOD会带上类名,FUNCTION 没有类名
  • 对于非类成员函数,没差别

打赏

微信打赏

支付宝打赏



发表我的评论
昵称 (必填)
邮箱 (必填)
网址
执行时间: 55.776119232178 毫秒