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) }