Wie füge ich zwei Objekte in PHP zusammen? (Codebeispiel)

青灯夜游
Freigeben: 2023-04-05 15:14:02
Original
11726 Leute haben es durchsucht

Wenn in PHP zwei Objekte derselben Klasse vorliegen, wie können die beiden Objekte zu einem einzigen Objekt zusammengeführt werden? Der folgende Artikel stellt Ihnen die Methode zum Zusammenführen zweier Objekte in PHP vor. Ich hoffe, er wird Ihnen hilfreich sein. [Video-Tutorial-Empfehlung: PHP-Tutorial]

Wie füge ich zwei Objekte in PHP zusammen? (Codebeispiel)

Methode 1: Konvertieren Sie das Objekt zuerst in ein Datenarray und verwenden Sie es dann array_merge( )-Funktion zum Zusammenführen und schließlich Konvertieren der zusammengeführten Daten in ein stdClass-Objekt.

Hinweis: Wenn Sie array_merge() zum Zusammenführen von Objekten verwenden, werden die Array-Elemente in Argument1 durch die Array-Elemente in Argument2 überschrieben. Wenn das Array in argument2 Nullwerte hat, kann dies dazu führen, dass die resultierenden Elemente im endgültigen Objekt ungültig werden.

Beispiel:

<?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); 
  
?>
Nach dem Login kopieren

Ausgabe:

Wie füge ich zwei Objekte in PHP zusammen? (Codebeispiel)

Methode 2: Erstellen Sie ein neues Objekt der ursprünglichen Klasse und Verwendung Die foreach-Schleife weist diesem neuen Objekt alle Eigenschaften beider Objekte zu.

Beschreibung: Dies ist eine einfache und saubere Möglichkeit, zwei Objekte zusammenzuführen.

Beispiel:

<?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, &#39;demo&#39;); 
          
var_dump($obj_merged); 
  
?>
Nach dem Login kopieren

Ausgabe:

Wie füge ich zwei Objekte in PHP zusammen? (Codebeispiel)

Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, er wird für alle hilfreich sein Lernen. Weitere spannende Inhalte finden Sie in den entsprechenden Tutorial-Kolumnen auf der chinesischen PHP-Website! ! !

Das obige ist der detaillierte Inhalt vonWie füge ich zwei Objekte in PHP zusammen? (Codebeispiel). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage