PHP는 객체 지향 프로그래밍 언어이므로 PHP에서는 객체가 매우 일반적이며 객체와 배열 간의 변환도 자주 필요한 작업입니다. 이 글에서는 PHP에서 객체와 배열을 변환하는 방법과 객체 배열을 다차원 배열 객체로 변환하는 방법을 소개합니다.
PHP의 내장 함수를 사용하여 객체를 배열로 변환합니다. 객체 속성을 연관 배열로 변환하는 get_object_vars()를 사용할 수 있습니다.
예:
class car { public $make = 'Toyota'; public $model = 'Camry'; public $color = 'black'; protected $year = 2018; } $obj = new car; $arr = get_object_vars($obj); print_r($arr);
출력 결과:
Array ( [make] => Toyota [model] => Camry [color] => black )
참고: get_object_vars() 함수는 공개 속성(public)만 변환할 수 있습니다. 보호 속성과 개인 속성은 모두 변환할 수 없습니다.
PHP 내장 함수를 사용하여 배열을 객체로 변환할 수 있으며, 강제 유형 변환도 사용할 수 있습니다.
예:
$arr = array('make' => 'Toyota', 'model' => 'Camry', 'color' => 'black'); $obj = (object) $arr; // Alternatively, you can use type casting // $obj = (object) array('make' => 'Toyota', 'model' => 'Camry', 'color' => 'black'); echo $obj->make; // Toyota
출력 결과:
Toyota
PHP에서 객체 배열은 객체로 구성된 배열입니다. 객체 배열을 배열 객체로 변환하려면 PHP의 미리 정의된 array_map() 함수를 사용하면 됩니다.
예:
class car { public $make = 'Toyota'; public $model = 'Camry'; public $color = 'black'; protected $year = 2018; } $obj1 = new car; $obj2 = new car; $obj3 = new car; $car_array = array($obj1, $obj2, $obj3); // using array_map() to transform all objects into arrays: $arr_array = array_map(function($object) { return get_object_vars($object); }, $car_array); // displaying the resulting array print_r($arr_array);
출력 결과:
Array ( [0] => Array ( [make] => Toyota [model] => Camry [color] => black ) [1] => Array ( [make] => Toyota [model] => Camry [color] => black ) [2] => Array ( [make] => Toyota [model] => Camry [color] => black ) )
PHP에서 배열 개체는 배열로 구성된 개체입니다. 배열 객체를 객체 배열로 변환하려면 PHP의 미리 정의된 array_map() 함수를 사용하고 이를 구현하기 위해 캐스팅할 수 있습니다.
예:
class car { public $make = 'Toyota'; public $model = 'Camry'; public $color = 'black'; protected $year = 2018; } $arr1 = array('make' => 'Toyota', 'model' => 'Camry', 'color' => 'black'); $arr2 = array('make' => 'Honda', 'model' => 'Civic', 'color' => 'white'); $arr3 = array('make' => 'Chevrolet', 'model' => 'Malibu', 'color' => 'silver'); $car_array = array($arr1, $arr2, $arr3); $obj_array = array_map(function($array) { return (object) $array; }, $car_array); // displaying the resulting array print_r($obj_array);
출력 결과:
Array ( [0] => stdClass Object ( [make] => Toyota [model] => Camry [color] => black ) [1] => stdClass Object ( [make] => Honda [model] => Civic [color] => white ) [2] => stdClass Object ( [make] => Chevrolet [model] => Malibu [color] => silver ) )
PHP에서 다차원 배열 객체는 여러 배열 객체를 포함하는 객체 배열을 의미합니다. 객체 배열을 다차원 배열 객체로 변환하려면 PHP의 미리 정의된 array_map() 함수와 연관 배열을 사용하여 이를 달성할 수 있습니다.
예:
class car { public $make = 'Toyota'; public $model = 'Camry'; public $color = 'black'; protected $year = 2018; } $obj1 = new car; $obj2 = new car; $obj3 = new car; $car_array = array($obj1, $obj2, $obj3); $arr_array = array_map(function($object) { return get_object_vars($object); }, $car_array); // combining the resulting arrays into a multidimensional array $final_array = array('cars' => $arr_array); // displaying the final multidimensional array print_r($final_array);
출력 결과:
Array ( [cars] => Array ( [0] => Array ( [make] => Toyota [model] => Camry [color] => black ) [1] => Array ( [make] => Toyota [model] => Camry [color] => black ) [2] => Array ( [make] => Toyota [model] => Camry [color] => black ) ) )
이 글에서는 PHP에서 객체와 배열을 서로 변환하는 방법과 객체 배열을 다차원 배열 객체로 변환하는 방법을 소개합니다. 이러한 변환은 PHP 개발에서 매우 일반적인 작업입니다. 이러한 작업에 능숙하면 개발 작업이 매우 편리해집니다.
위 내용은 PHP에서 객체를 배열로 변환하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!