PHP에서 동일한 클래스의 두 개체가 주어지면 두 개체를 단일 개체로 병합하는 방법은 무엇입니까? 다음 기사에서는 PHP에서 두 개체를 병합하는 방법을 소개합니다. 이것이 도움이 되기를 바랍니다. [동영상 튜토리얼 추천: PHP 튜토리얼]
방법 1: 먼저 객체를 데이터 배열로 변환한 다음 array_merge() 함수를 사용하여 병합하고 마지막으로 병합된 데이터를 stdClass 객체로 변환합니다.
참고: array_merge()를 사용하여 객체를 병합하면 인수1의 배열 요소가 인수2의 배열 요소로 덮어쓰여집니다. Argument2의 배열에 Null 값이 있으면 최종 개체의 결과 요소가 무효화될 수 있습니다.
예:
<?php class demo { // 空类 } $objectA = new demo(); $objectA->a = 1; $objectA->b = 2; $objectA->d = 3; $objectB = new demo(); $objectB->d = 4; $objectB->e = 5; $objectB->f = 6; $obj_merged = (object) array_merge( (array) $objectA, (array) $objectB); var_dump($obj_merged); ?>
출력:
방법 2: 원래 클래스의 새 개체를 만들고 foreach 루프를 사용하여 두 개체의 모든 속성을 이 새 개체에 할당합니다.
설명: 두 개체를 병합하는 간단하고 깔끔한 방법입니다.
예:
<?php class demo { // 空类 } $objectA = new demo(); $objectA->A = 1; $objectA->B = 2; $objectA->C = 3; $objectA->D = 4; $objectA->E = 5; $objectB = new demo(); $objectB->D = 6; $objectB->E = 7; $objectB->F = 8; // 用于转换给定对象类的函数 function convertObjectClass($objectA, $objectB, $final_class) { $new_object = new $final_class(); // 初始化类属性 foreach($objectA as $property => $value) { $new_object->$property = $value; } foreach($objectB as $property => $value) { $new_object->$property = $value; } return $new_object; } $obj_merged = convertObjectClass($objectA,$objectB, 'demo'); var_dump($obj_merged); ?>
출력:
위는 이 글의 전체 내용입니다. 모든 사람의 학습에 도움이 되기를 바랍니다. 더 흥미로운 내용을 보려면 PHP 중국어 웹사이트의 관련 튜토리얼 열을 주의 깊게 살펴보세요! ! !
위 내용은 PHP에서 두 개체를 병합하는 방법은 무엇입니까? (코드 예)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!