PHP,如何获取运行函数的名称?

时间:2019-01-14 01:15:36

标签: php

我正在使用错误日志功能,我想包括在错误日志期间发生错误的功能。有没有一种方法可以编写函数,而不是每次都编写函数?

<?php 

$a = null;

exampleFunction($a);

function exampleFunction($variable){

  if(is_null($variable)){

    errorLog("variable is null. Function : exampleFunction()");

  }

}

function errorLog($text){

 error_log($text, 3, ".testLog");

}

?>

__FUNCTION__不是解决方案。如果我使用__FUNCTION__,则会收到“ errorLog”。我想知道正在运行errorLog的函数的名称。

例如;

function errorLog($text){

  error_log($text.' Function : '.$functionName, 3, ".testLog");

}

2 个答案:

答案 0 :(得分:1)

是的,您可以使用__FUNCTION__常量。是_ _(2个下划线)“功能” _ __(2个下划线)

function whatever($stuff){
echo "The function name is " . __FUNCTION__;
}

如果您想更进一步,如果它在上课...

echo "The class name is " . __CLASS__ . " and the function is " . __FUNCTION__;

答案 1 :(得分:0)

为此,您可以使用magic constant __FUNCTION __