PHP の ::class 表記法: 包括的な説明
PHP の ::class 表記法は、比較的最近言語に追加されました。 、バージョン 5.5 で導入されました。この表記法を使用すると、名前空間を含むクラスの完全修飾名を取得できます。
::class の使用方法
::class 表記法を使用するには、クラスの名前の後に ::class サフィックスを付けるだけです:
SomeClass::class
これにより、クラスの完全な名前が返されます。クラス (例:
App\Console\Commands\Inspire
::class を使用する利点
::class 表記には、クラス名を格納する従来の方法に比べていくつかの利点があります。
use App\Console\Commands\Inspire; //... protected $commands = [ Inspire::class, // Equivalent to "App\Console\Commands\Inspire" ];
::class の追加アプリケーション
主な機能に加えて、::class 表記は次の用途にも使用できます。遅延静的バインディング。派生クラスの名前が親クラス内で解決される手法。これは、static::class 構文
class A { public function getClassName(){ return __CLASS__; } public function getRealClassName() { return static::class; } } class B extends A {} $a = new A; $b = new B; echo $a->getClassName(); // A echo $a->getRealClassName(); // A echo $b->getClassName(); // A echo $b->getRealClassName(); // Bを使用して実現できます。
以上がPHP ::class 記法とは何ですか?また、クラス処理をどのように簡素化するのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。