我怎样才能找到我在php中使用的方法的名称?我发现如何在C中执行此操作,但不在PHP中执行此操作。我在这里发现了一个Q,大致谈到了魔法常数(here),但我并没有真正理解它。在以下示例中,我希望$ thisMethodName为'model_databaseLogin'
EG:
public function model_databaseLogin()
{
$thisMethodName = ... ;
return $this->model_methodCheck( $thisMethodName );
}
这可能在PHP吗?
答案 0 :(得分:3)
你需要"魔法常数" __METHOD__
。 magic constant docs应该会有所帮助。
所以你的代码是:
public function model_databaseLogin() {
$thisMethodName = __METHOD__;
return $this->model_methodCheck($thisMethodName);
}
答案 1 :(得分:0)
最简单的答案是你所指的神奇常数;特别是__FUNCTION__
这些被称为“魔术”,因为它们的价值实际上是上下文动态的。
public function model_databaseLogin()
{
$thisMethodName = __FUNCTION__;
return $this->model_methodCheck( $thisMethodName );
}
还有另一种方法,通过debug_backtrace(),但效率明显降低!