PHP 魔术常量

过去我认为已经记得很牢的知识,今天也是模棱两可。好记性,不如烂笔头。

做笔记的意义在于,对模棱两可的知识不断的复盘,达到看到 苹果,就想起 Apple , 就能想起 A-P-P-L-E 的境界一般。

魔术常量

魔术常量(Magical Constants) 的值会伴随着它们在代码中的位置改变而改变。

常用的 8 个 PHP 魔术常量有:

名称 说明
__LINE__ the current line number of the file
__FILE__ the full path and filename of the file
__DIR__ the directory of the file
__NAMESPACE__ the name of the current namespace
__CLASS__ the class name
__FUNCTION__ the function name
__METHOD__ the class method name
__TRAIT__ The trait name. The trait name includes the namespace it was declared in

源码说明

<?php
namespace magic\consts;

echo __NAMESPACE__; // magic\consts

class Test extends Base
{
    public function __construct()
    {
        parent::__construct();
        var_dump(__CLASS__); //magic\consts\Test
    }

    public function echomethod()
    {
        var_dump(__METHOD__); // magic\consts\Test::echomethod
    }

    public function echofunction()
    {
        var_dump(__FUNCTION__); // echofunction
    }
}

class Base
{
    public function __construct()
    {
        var_dump(__CLASS__); //magic\consts\Base
    }
}

$test = new Test();
$test->echomethod();
$test->echofunction();

var_dump(__DIR__); // F:\ProgramLife\WWW\Demo\magic_const
var_dump(__FILE__); // F:\ProgramLife\WWW\Demo\magic_const\const.php
var_dump(__LINE__); // 50
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 有 8 个常量(英文版文档称之为 magical constant),它们的值在它们被使用之前不是绝对确定的,需要...
    咚门阅读 311评论 0 0
  • 有八个魔术常量它们的值随着它们在代码中的位置改变而改变,这些特殊的常量不区分大小写。 __LINE__ 文件中的当...
    叶惜朝阅读 638评论 0 0
  • PHP有八个魔术常量,它们的值随着它们在代码中的位置改变而改变。这些特殊的常量不区分大小写,如下:
    NoFacePeace阅读 202评论 0 0
  • 1、 __LINE__ 获取文件中的当前行号 2、 __FILE__ 获取文件的完整路径和文件名,如果用在...
    yuzhan550阅读 153评论 0 0
  • __LINE__ 文件中的当前行数 __FILE__ 当前文件的绝对路径,包括当前文件的文件名 __DIR__ 当...
    周瑜君阅读 186评论 0 2