문제

PHP의 클래스가 명시적으로 확장될 필요는 없지만 stdClass, 그렇게 하면 어떤 모범 사례나 이점이 있는지 궁금합니다.

연장할까 stdClass 클래스를 선언할 때?

참고로 다음을 참조하세요. PHP의 stdClass란 무엇입니까? 그리고 PHP:객체, 객체로 변환.

도움이 되었습니까?

해결책

StdClass 비어 있으므로 확장해도 아무런 이점이 없습니다.

넌 낭비할 뿐이야 extend 당신의 __CLASS__˙.

php --rc StdClass
Class [ <internal:Core> class stdClass ] {

  - Constants [0] {
  }

  - Static properties [0] {
  }

  - Static methods [0] {
  }

  - Properties [0] {
  }

  - Methods [0] {
  }
}

연장 이유는 단 하나 stdClass 이 클래스에 대한 유형 힌트를 충족시키는 것입니다. 그러나 그러한 유형 힌트는 논쟁의 여지가 있으므로 절대 사용해서는 안 됩니다.

다른 팁

아니오

STDCLASS를 확장하는 데는 재미있는 사용 방법이 있습니다. ($ 객체 인스턴스 stdClass) true를 반환하고 is_object ($ 객체)보다 3 배 빠릅니다.우리는 1 마이크로 두 번째 차이점을 말하고 있지만 불행히도, 프로젝트 전반에 걸쳐 엄격한 정책을 만들지 않는 한 쉽게 일관성이 없어 쉽게 돕는 것보다 혼란 스러울 수 있습니다.실제로 PHP 클래스가 기본적으로 STDClass를 확장하지 않는다는 사실을 알게되어 실망했습니다.나에게 의미가 있었을거야.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top