显示当前代码在多少行__LINE_
echo __LINE__;
获取当前文件绝对路径 __FILE__
echo __FILE__;
获取当前文件所在的目录__DIR_
echo __DIR__;
获取当前方法的名称__FUNCTION__
function test() {
echo __FUNCTION__;
}
test();
//结果为:
//test
获取当前命名空间的名称,也就是namespace的名称__NAMESPACE__
namespace xxxx\index;
echo __NAMESPACE__;
//结果为:
// xxxx\index
获取当前类的名称__CLASS__
class test {
function l() {
echo __CLASS__;
}
}
(new test)->l();
// 结果为:
// test
获取当前方法的名称
当单独存在的时候跟__FUNCTION__的返回值是一样的;
但是,当和__FUNCTION__处于同一个类的时候,__METHOD__前面会多出一个类名.如 类名::方法名
class Test{
public function doit(){
echo __FUNCTION__;
}
public function doitAgain(){
echo __METHOD__;
}
}
$obj = new Test();
$obj->doit();
echo '<br>';
$obj->doitAgain();
// 结果为:
// doit
// Test::doitAgain
以上是部分魔术常量
PHP_VERSION 内建常量,是指PHP程序的版本;
PHP_OS 内建常量,是指PHP解析器的操作系统的名称;
TRUE 是指真值(true);
FALSE 是指假指(false);
NULL 是指空值(null);
E_ERROR 是指最近的错误之处;
E_WARNING 是指最近的警告之处;
E_PARSE 是指解析语法有潜在的问题之处;
E_NOTICE 是指发生不同寻常的提示,但不一定是错误处;
以上是常用的,不是全部,更多请查看PHP手册。
参照 https://blog.csdn.net/Jacksun_huang/article/details/88546060
https://www.cnblogs.com/junyi-bk/p/11082458.html