PHP에서는 객체를 배열로 변환해야 할 때가 있습니다. 일반적으로 객체의 속성을 통해 객체의 값에 접근하거나 설정할 수 있습니다. 그러나 개체를 JSON 문자열로 변환하거나 개체의 속성을 메서드에 전달해야 하는 경우와 같이 개체를 배열로 변환해야 하는 상황이 있습니다.
PHP에서는 타입 캐스팅을 사용하여 객체를 배열로 변환할 수 있습니다. PHP에는 객체를 배열로 변환할 수 있는 캐스트 함수 array
가 내장되어 있습니다. array
可以将对象转换成数组。
示例:
class Person { public $name; public $age; public $gender; public function __construct($name, $age, $gender) { $this->name = $name; $this->age = $age; $this->gender = $gender; } } $person = new Person("Tom", 25, "male"); $personArray = (array) $person; print_r($personArray);
代码解析:
在上面的示例中,我们定义了一个名为 Person
的类,它有三个公共属性:$name
, $age
, 和 $gender
。我们创建了一个 Person
对象并将其存储在变量 $person
中。接下来,我们使用 PHP 中的强制类型转换函数 array
将 $person
对象转换为一个数组并将其存储在变量 $personArray
中。最后,我们使用 print_r
函数打印数组 $personArray
Array ( [name] => Tom [age] => 25 [gender] => male )
$name
, 가 있는 <code>Person
이라는 클래스를 정의합니다. $age 및 $gender
. Person
개체를 생성하여 $person
변수에 저장합니다. 다음으로, PHP의 array
캐스트 함수를 사용하여 $person
객체를 배열로 변환하고 이를 $personArray
변수 중간에 저장합니다. 마지막으로 print_r
함수를 사용하여 $personArray
배열의 값을 인쇄합니다. 위 코드를 실행해보면 객체를 배열로 변환한 후 객체의 속성이 배열의 키가 되고, 속성값이 배열의 값이 되는 것을 알 수 있습니다. 출력은 다음과 같습니다.
class Person { private $firstName; protected $lastName; public $age; public function __construct($firstName, $lastName, $age) { $this->firstName = $firstName; $this->lastName = $lastName; $this->age = $age; } } $person = new Person("Tom", "Smith", 25); $personArray = (array) $person; print_r($personArray);
Array ( [PersonfirstName] => Tom [lastName:Protected] => Smith [age] => 25 )
개인 또는 보호 속성은 배열로 변환되지 않으며 공용 속성으로 설정해야 합니다.
🎜형변환 시 PHP는 이름 충돌을 방지하기 위해 개인 및 보호 속성 앞에 접두사를 붙입니다. 🎜🎜🎜위 내용은 PHP 객체를 배열로 변환하는 방법에 대한 몇 가지 기본 지식이지만 실제로 PHP에서 객체를 배열로 변환하는 방법은 여러 가지가 있습니다. 따라서 특정 애플리케이션에서는 비즈니스 시나리오와 특정 요구 사항에 따라 가장 적합한 변환 방법을 선택해야 합니다. 🎜위 내용은 PHP 객체를 배열로 강제 변환하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!