How to get current function name in PHP?

The function name can be easily obtained by the __FUNCTION__ or the __METHOD__
magic constant.

Method 1 (Prints function name):
__FUNCTION__ is used to resolve function name or method name (function in class).

Example:

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
class Test {
  
    public function bar() {
        var_dump(__FUNCTION__);
    }
}
  
function foo() {
    var_dump(__FUNCTION__);
}
  
// Must output string(3) 'foo' 
foo();
  
$obj = new Test;
  
// Must output string(3) 'bar'
$obj->bar();

chevron_right


Output:

string(3) "foo"
string(3) "bar"

Method 2 (Prints function and class name):
using __METHOD__.

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
  
class Test 
{
    public function foo() {
        var_dump(__METHOD__);
    }
}
  
  
function bar()
{
    var_dump(__METHOD__);
}
  
// Same As __FUNCTION__
bar();
  
$obj = new Test;
  
// Output the fully qualified method name "ClassName::MethodName"
$obj->foo();

chevron_right


Output:

string(3) "bar"
string(9) "Test::foo"

Note: this code is tested with php7.1



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.