0

重複の可能性:
現在のクラスとメソッドを取得しますか?

PHPで使用しているメソッドの名前を見つけるにはどうすればよいですか? Cでこれを行う方法を見つけましたが、PHPでは見つけませんでした。マジック定数について大まかに説明している Q を here で見つけました ( here ) が、実際にはわかりませんでした。次の例では、$thisMethodName を「model_databaseLogin」にします。

例えば:

public function model_databaseLogin()
{
$thisMethodName = ... ;
return $this->model_methodCheck( $thisMethodName );
}

これはphpで可能ですか?

4

2 に答える 2

3

「魔法定数」が必要です__METHOD__マジック定数のドキュメントが役立つはずです。

したがって、コードは次のようになります。

public function model_databaseLogin() {
    $thisMethodName = __METHOD__;
    return $this->model_methodCheck($thisMethodName);
}
于 2012-08-02T22:37:04.093 に答える
0

最も簡単な答えは、参照する魔法の定数です。具体的には__FUNCTION__

これらの値は実際には文脈上動的であるため、「魔法」と呼ばれます。

public function model_databaseLogin()
{
$thisMethodName = __FUNCTION__;
return $this->model_methodCheck( $thisMethodName );
}

別の方法として debug_backtrace() を使用する方法もありますが、これは明らかに効率が悪いです!

于 2012-08-02T22:39:21.597 に答える