Heim > Backend-Entwicklung > PHP-Problem > So konvertieren Sie ein PHP-Array-Objekt in ein Array-Objekt

So konvertieren Sie ein PHP-Array-Objekt in ein Array-Objekt

PHPz
Freigeben: 2023-04-27 14:32:14
Original
470 Leute haben es durchsucht

In PHP müssen wir manchmal ein Array-Objekt in ein anderes Array-Objekt konvertieren. Dieser Vorgang ist nicht schwierig und kann mit nur wenigen Zeilen einfachen Codes durchgeführt werden.

Die Hauptschritte zum Konvertieren eines Array-Objekts in ein Array-Objekt sind wie folgt:

  1. Quelldaten definieren
#🎜🎜 #Angenommen, wir haben eine Quelle. Ein Array-Objekt enthält mehrere Objektelemente, jedes Element hat mehrere Eigenschaften. Wir müssen diese Objektelemente in ein anderes Array-Objekt konvertieren, und jedes Element muss nur bestimmte Attribute enthalten.

Der Code lautet wie folgt:

$sourceArray = array(
    (object) array('id' => 1, 'name' => 'John', 'age' => 25),
    (object) array('id' => 2, 'name' => 'Amy', 'age' => 35),
    (object) array('id' => 3, 'name' => 'Bob', 'age' => 28),
    (object) array('id' => 4, 'name' => 'Cathy', 'age' => 30)
);
Nach dem Login kopieren
    Definieren Sie die Zieldatenstruktur
Wir müssen die Daten definieren Struktur des Ziel-Array-Objekts, das heißt, welche Attribute jedes Element enthält. Wenn jedes Element des Zielarrays alle Attribute im Quellarray enthält, kann das Zielarray ohne Konvertierung direkt dem Quellarray entsprechen.

$targetStructure = array(
    'id' => '',
    'name' => '',
);
Nach dem Login kopieren
    Umsetzung der Konvertierung
Da wir nun die Datenstrukturen des Quellarrays und des Zielarrays haben, besteht der nächste Schritt darin, sie zu verarbeiten den Konvertierungsprozess. Wir können eine foreach-Schleife verwenden, um jedes Element im Quellarray zu durchlaufen und die entsprechenden Attribute im Quellarray basierend auf der Datenstruktur des Zielarrays in das Zielarray zu kopieren.

$targetArray = array();

foreach ($sourceArray as $sourceObject) {
    $targetObject = array();

    foreach ($targetStructure as $key => $value) {
        $targetObject[$key] = $sourceObject->$key;
    }

    $targetArray[] = (object) $targetObject;
}
Nach dem Login kopieren
Im obigen Code definieren wir zunächst ein leeres Array $targetArray, um die konvertierten Daten zu speichern. Dann führten wir eine foreach-Schleife für das Quellarray durch und iterierten durch jedes Element $sourceObject. In der inneren Schleife wird die $targetStructure des Zielarrays einer Schleife unterzogen, um den entsprechenden Schlüssel und Wert zu generieren. Schließlich konvertieren wir jedes Zielelement in ein neues Objekt und fügen es zu $targetArray hinzu.

    $targetArray,用于保存转换后的数据。接着我们对源数组进行了 foreach 循环,遍历了每个元素 $sourceObject。在内层循环中,则是对目标数组的 $targetStructure 进行了循环,生成对应的 keyvalue 。最后,我们将每个目标元素转换成一个新的对象,并将其添加到 $targetArray 中。
    1. 输出结果

    最后,我们可以输出经过转换后的目标数组,检查转换是否成功。我们可以使用 print_r() 函数输出数组,也可以使用 json_encode()Ergebnis ausgeben

    Schließlich können wir das konvertierte Zielarray ausgeben, um zu überprüfen, ob die Konvertierung erfolgreich ist. Wir können die Funktion print_r() verwenden, um ein Array auszugeben, oder wir können die Funktion json_encode() verwenden, um das Array in das JSON-Format zu konvertieren, um die Anzeige der Ausgabeergebnisse zu erleichtern.

    echo json_encode($targetArray);
    Nach dem Login kopieren
    Auf diese Weise haben wir alle Schritte der Array-Objektkonvertierung abgeschlossen. Der vollständige Code lautet wie folgt: #🎜🎜#
    $sourceArray = array(
        (object) array('id' => 1, 'name' => 'John', 'age' => 25),
        (object) array('id' => 2, 'name' => 'Amy', 'age' => 35),
        (object) array('id' => 3, 'name' => 'Bob', 'age' => 28),
        (object) array('id' => 4, 'name' => 'Cathy', 'age' => 30)
    );
    
    $targetStructure = array(
        'id' => '',
        'name' => '',
    );
    
    $targetArray = array();
    
    foreach ($sourceArray as $sourceObject) {
        $targetObject = array();
    
        foreach ($targetStructure as $key => $value) {
            $targetObject[$key] = $sourceObject->$key;
        }
    
        $targetArray[] = (object) $targetObject;
    }
    
    echo json_encode($targetArray);
    Nach dem Login kopieren
    #🎜🎜#In der tatsächlichen Entwicklung müssen wir möglicherweise mehr Daten verarbeiten und filtern, aber die allgemeine Idee ist im Grunde dieselbe wie im obigen Beispielcode. Wenn eine Datenkonvertierung erforderlich ist, können wir den Code entsprechend der tatsächlichen Situation ändern und die entsprechende Datenverarbeitung abschließen. #🎜🎜#

Das obige ist der detaillierte Inhalt vonSo konvertieren Sie ein PHP-Array-Objekt in ein Array-Objekt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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