PHP内置了八个魔术常量,它们的值随着它们的位置改变而改变,如:‘__LINE__’的值依赖于它所在脚本的哪行决定。
1. __LINE__ 当前所在行
2. __FILE__ 当前文件名(包含路径)
3. __DIR_ 当前所在目录
4. __FUNCTION__ 所处函数名,区分大小写
5. __CLASS__ 所处类名包括其被声明的作用域,区分大小写
6. __METHOD__ 所处的方法名包括其被声明的作用区域,区分大小写
7. __TRAIT__ trait的名字,区分大小写
8. __NAMESPACE__ 当前命名空间的名称,区分大小写
写个测试代码看下效果
<?php
namespace app\index\controller;
class Index
{
public function test(){
echo __LINE__ . '<br>'; // 当前所在行
echo __FILE__ . '<br>'; // 当前文件名(包含路径)
echo __DIR__ . '<br>'; // 当前所在目录
echo __FUNCTION__ . '<br>'; // 所处函数名,区分大小写
echo __CLASS__ . '<br>'; // 所处类名包括其被声明的作用域,区分大小写
echo __METHOD__ . '<br>'; // 所处的方法名包括其被声明的作用区域,区分大小写
echo __TRAIT__ . '<br>'; // trait的名字,区分大小写
echo __NAMESPACE__ . '<br>'; // 当前命名空间的名称,区分大小写
}
}
看下结果
知道trait为什么没有输出吗,不知道的都是在学习,知道的都是大佬了。