ホームページ >バックエンド開発 >PHPチュートリアル >注016 PHPのget_class()関数
get_class() は、オブジェクトのクラス名を返すために使用されます。
説明
使用法:
string get_class ([ object $obj ] )
obj オブジェクトに対応するクラス名を返します。obj がオブジェクトでない場合は false が返されます。
この方法を使用すると、低レベルの関連コードをより簡単に作成できます。
注: PHP 5 以降、オブジェクトのメソッド内で呼び出される場合、obj はオプションです。
インスタンス
インスタンス 1:
<?phpclass TestCase{ function getName() { echo "My name is ", get_class($this), "\n"; } }// Create an object $instance = new TestCase(); // External call echo "Its name is ", get_class($instance), "\n"; // Internal call $instance->getName();
出力結果は次のとおりです: その名前は TestCase 私の名前は TestCase です
インスタンス 2: 名前空間を持つクラス
<?php namespace TestNamespace; class TestCase{ function getName() { echo "My name is ", get_class($this), "\n"; } } // Create an object $instance = new TestCase(); // External call echo "Its name is ", get_class($instance), "\n"; // Internal call $instance->getName();
出力結果は次のとおりです: その名前は TestNamespaceTestCase 私の名前は TestNamespaceTestCase
したがって、このメソッドは、このクラスに対応する名前空間を取得したい場合にも非常に役立ちます。
例 3: obj パラメーターを無視します
<?phpnamespace TestNamespace;class TestParentCase{ function getName() { echo "My name is ", get_class(), "\n"; } }class TestCase extends TestParentCase{ function getThisName() { echo "My name is ", get_class(), "\n"; } }// Create an object$instance = new TestCase(); $instance->getName(); $instance->getThisName();
出力結果は次のとおりです: My name is TestNamespaceTestParentCase My name is TestNamespaceTestCase
obj パラメーターを省略すると、クラスの名前が得られます。それがそれを定義します
他に注意が必要な状況がある場合は、Hy369 にフィードバックを送ってください。すぐに私のブログに追加します。
上記は、Note 016 PHP の get_class() 関数の内容です。さらに関連する内容については、PHP 中国語 Web サイト (www.php.cn) に注目してください。