PHP 魔术常量
PHP 魔术常量
概述
PHP 魔术常量是一种自动定义的常量,不需要手动定义即可使用。它们是 PHP 中的预定义常量,可以在任何地方使用。魔术常量的名称都是以两个下划线开始和结束的,如 LINE 和 FILE 等。
魔术常量列表
PHP 中有多个魔术常量,以下是其中一部分:
LINE
用于获取当前行号,返回一个整数值。例如:
echo __LINE__; // 输出当前行号
FILE
用于获取当前文件名,返回一个字符串值。例如:
echo __FILE__; // 输出当前文件名
DIR
用于获取当前目录,返回一个字符串值。例如:
echo __DIR__; // 输出当前目录
FUNCTION
用于获取当前函数名,返回一个字符串值。例如:
function test() {
echo __FUNCTION__; // 输出当前函数名
}
test();
CLASS
用于获取当前类名,返回一个字符串值。例如:
class Test {
public function displayClass() {
echo __CLASS__; // 输出当前类名
}
}
$test = new Test();
$test->displayClass();
METHOD
用于获取当前方法名,返回一个字符串值。例如:
class Test {
public function displayMethod() {
echo __METHOD__; // 输出当前方法名
}
}
$test = new Test();
$test->displayMethod();
NAMESPACE
用于获取当前命名空间名,返回一个字符串值。例如:
namespace MyNamespace;
echo __NAMESPACE__; // 输出当前命名空间名
注意事项
- 魔术常量在 PHP 5.3.0 及更高版本中可用。
- 所有魔术常量均为只读常量,不可被修改或删除。
- 魔术常量的值在不同的上下文中可能会有所不同,如 NAMESPACE 的值在不同的命名空间中可能会有所区别。