PHP의 ::class 표기법 이해
PHP의 ::class 표기법은 정규화된 이름을 얻을 수 있는 강력한 기능입니다. 네임스페이스를 포함한 클래스의 이름입니다. PHP 5.5에 도입된 이 표기법은 코드 가독성, 리팩토링 및 후기 정적 바인딩에 상당한 이점을 제공합니다.
::class
사용 시 이점 ::class 표기법 사용:
구문 및 사용법
::class 구문은 간단합니다.
SomeClass::class
이 표기법은 네임스페이스 접두사를 포함하여 SomeClass의 정규화된 이름을 반환합니다.
예
다음 예를 고려해보세요.
protected $commands = [ \App\Console\Commands\Inspire::class, ];
::class를 사용하면 하드 코딩된 클래스 이름을 사용하면 명령 배열을 더 쉽게 유지 관리하고 업데이트할 수 있습니다.
후기 정적 바인딩 예
다음 예에서는 다음을 사용한 후기 정적 바인딩을 보여줍니다. :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
보시다시피 상위 클래스 A의 getRealClassName() 메소드는 다음을 사용합니다. static::class를 사용하여 파생 클래스 B의 이름을 얻으며 후기 정적 바인딩의 이점을 보여줍니다.
위 내용은 PHP의 `::class` 표기법의 이점과 사용법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!