Как получить имя функции внутри функции в PHP?
Является ли это возможным?
function test()
{
echo "function name is test";
}
4 ответа
Решение
Точный способ заключается в использовании __FUNCTION__
предопределенная магическая постоянная.
Пример:
class Test {
function MethodA(){
echo __FUNCTION__;
}
}
Результат: MethodA
,
Вы можете использовать магические константы __METHOD__
(включает название класса) или __FUNCTION__
(просто имя функции), в зависимости от того, метод это или функция... =)
Если вы используете PHP 5, вы можете попробовать это:
function a() {
$trace = debug_backtrace();
echo $trace[0]["function"];
}
<?php
class Test {
function MethodA(){
echo __FUNCTION__ ;
}
}
$test = new Test;
echo $test->MethodA();
?>
Результат: "Метод А";