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中文网其他相关文章!