PHP 魔术常量

LINE: 当前所在行

FILE: 当前文件名(包含路径)

DIR: 当前目录

FUNCTION: 所处函数名,区分大小写

CLASS: 所处类名包括被声明的作用域,区分大小写

METHOD: 所处的方法名的作用域,区分大小写

TRAIT: trait的名字,区分大小写

NAMESPACE:当前命名空间的名称,区分大小写


_ LINE_

文件中的当前行号。

php 复制代码
<?php
echo '这是第 " '  . __LINE__ . ' " 行';

FILE

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

php 复制代码
<?php
echo '该文件位于 " '  . __FILE__ . ' " ';

能输出当前文件位置

该文件位于 " E:\wamp\www\test\index.php "


DIR

文件所在的目录。如果用在被包括文件中,则返回被包括的文件所在的目录。

php 复制代码
<?php
echo '该文件位于 " '  . __DIR__ . ' " ';

该文件位于 " E:\wamp\www\test "


FUNCTION

能返回函数的名称

function test() {

echo '函数名为:' . FUNCTION ;

}

test();

以上实例输出结果为:

函数名为:test

CLASS

可以返回class的类名

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

METHOD

返回类的方法名

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

NAMESPACE

当前命名空间的名称

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

输出结果:

相关推荐
小成很成3 小时前
mysql 8.0.21 升级 mysql 8.0.45(经过生产环境验证)
android·mysql·adb
「QT(C++)开发工程师」4 小时前
C++ 11 常用for循环
开发语言·c++
我还记得那天4 小时前
0 初识C++
开发语言·c++
FfHUCisI4 小时前
Go 编译过程全景
开发语言·后端·golang
FfHUCisI4 小时前
Golang 语法分析与 AST:Parser 与 go/ast
开发语言·后端·golang
秋饼5 小时前
JDK 27 企业级 AI 服务落地实战:G1 默认、紧凑对象头、后量子 TLS 与 JFR 脱敏全解析
java·ai·技术分享·后端开发
神奇霸王龙5 小时前
Cursor 3 + Claude Opus 4.8 屠榜:5 编程基座 IDE 卡位
ide·人工智能·ai·aigc·agent·ai编程·ai写作
卓怡学长5 小时前
w176基于SpringBoot的医院管理系统
java·spring boot·spring·maven·intellij-idea
lemon_sjdk5 小时前
ObjectProperty
java·开发语言·算法