ホームページ  >  記事  >  バックエンド開発  >  PHPで現在のクラスのメソッドを取得する方法(2つの方法)

PHPで現在のクラスのメソッドを取得する方法(2つの方法)

PHPz
PHPzオリジナル
2023-04-12 09:20:001371ブラウズ

PHP 開発者にとって、現在のクラスのメソッドの取得は非常に基本的ですが重要な操作です。 PHP では、現在のクラスのメソッドを取得する必要がある場合、次の 2 つの方法で取得できます。

方法 1: __METHOD__ マジック定数を使用する

__METHOD__ は PHP のマジック定数で、現在実行されているメソッドの名前を返すことができます。したがって、それを使用して現在のクラスのメソッドを取得できます。以下にサンプル コードを示します。

class Person {
    public function getName() {
        echo __METHOD__;
    }
}

$p = new Person();
$p->getName(); //输出Person::getName

上の例では、Person クラスを作成し、インスタンス化しました。次に、Person クラスの getName メソッドを呼び出し、メソッド内の __METHOD__ 定数の値を出力しました。

getName メソッドを呼び出すと、__METHOD__ 定数は「person::getName」を返します。これは、必要な現在のメソッドの名前とまったく同じです。

方法 2: get_class_methods 関数を使用する

現在のクラス メソッドを取得する別の方法は、PHP 組み込み関数 get_class_methods を使用することです。この関数は、クラス内のすべてのパブリック メソッドの配列を返すことができます。この配列内のキー名はメソッド名で、値は現在のクラス インスタンスを参照する呼び出し可能なオブジェクトです。

以下はサンプル コードです:

class Person {
    public function getName() {
        echo "My name is Joe";
    }
}

$p = new Person();
$methods = get_class_methods($p);
var_dump($methods);

上記の例では、Person クラスを作成し、インスタンス化しました。次に、get_class_methods 関数を使用して、Person クラス内のすべてのメソッドを取得し、コンソールに出力します。

上記のコードを実行すると、get_class_methods 関数の戻り結果が出力されます。これは、以下に示すように、クラス内のすべてのパブリック メソッドの配列です。 、キー メソッド名は「getName」で、値は現在のクラス インスタンスの呼び出し可能なオブジェクトです。

概要

上記は、PHP が現在のクラスのメソッドを取得する 2 つの方法です。現在のクラスのすべてのメソッドを取得するには、__METHOD__ マジック定数または組み込み関数 get_class_methods の使用を選択できます。初心者の場合は、__METHOD__ マジック定数を使用して現在のクラスのメソッドを取得することをお勧めします。これは、よりシンプルで理解しやすいためです。一定の経験を持つ PHP 開発者にとっては、get_class_methods 関数の方が一般的で実用的です。

以上がPHPで現在のクラスのメソッドを取得する方法(2つの方法)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。