stdClass 클래스

(PHP 4, PHP 5, PHP 7, PHP 8)


소개

동적 속성이 있는 일반 빈 클래스입니다.

이 클래스의 개체는 new 연산자로 인스턴스화하거나 개체로 유형 변환하여 만들 수 있습니다. 여러 PHP 함수도 이 클래스의 인스턴스를 생성합니다. json_decode(), mysqli_fetch_object() 또는 PDOStatement::fetchObject().

__get()/__set() 매직 메서드를 구현하지 않음에도 불구하고 이 클래스는 동적 속성을 허용하고 #[\AllowDynamicProperties] 특성이 필요하지 않습니다.

PHP에는 보편적인 기본 클래스의 개념이 없기 때문에 이것은 기본 클래스가 아닙니다. 그러나 stdClass에서 확장된 사용자 정의 클래스를 생성할 수 있으며 결과적으로 동적 속성의 기능을 상속합니다.


인터페이스 개요

                  
class stdClass {
}
                  
                

이 클래스에는 메서드나 기본 속성이 없습니다.


Examples

예제 #1 객체에 대한 유형 변환의 결과로 생성됨

                  
<?php
$obj = (object) array('foo' => 'bar');
var_dump($obj);
                  
                

위의 예는 다음을 출력합니다.

object(stdClass)#1 (1) {
  ["foo"]=>
  string(3) "bar"
}
                

예제 #2 json_decode()의 결과로 생성됨

                  
<?php
$json = '{"foo":"bar"}';
var_dump(json_decode($json));
                  
                

위의 예는 다음을 출력합니다.

object(stdClass)#1 (1) {
  ["foo"]=>
  string(3) "bar"
}
                

예제 #3 동적 속성 선언

                  
<?php
$obj = new stdClass();
$obj->foo = 42;
$obj->{1} = 42;
var_dump($obj);
                  
                

위의 예는 다음을 출력합니다.

object(stdClass)#1 (2) {
  ["foo"]=>
  int(42)
  ["1"]=>
  int(42)
}