PHP-Rückgabeobjekt in Array konvertiert

WBOY
Freigeben: 2023-05-19 14:33:08
Original
596 Leute haben es durchsucht

Bei der PHP-Programmierung müssen wir häufig ein Objekt in ein Array konvertieren. Diese Anforderung liegt normalerweise daran, dass beim Schreiben von Webanwendungen die aus der Datenbank oder anderen Datenquellen erhaltenen Daten normalerweise in Form von Objekten zurückgegeben werden. Um diese Daten verarbeiten und auf eine leicht lesbare und verarbeitende Weise darstellen zu können, müssen wir diese Objekte in Arrays konvertieren.

PHP ist für seine Flexibilität und Benutzerfreundlichkeit bekannt, daher ist auch die Konvertierung von Objekten in Arrays sehr einfach. In PHP können wir einige integrierte Funktionen verwenden, um diese Aufgabe zu erfüllen, und wir können auch Bibliotheken von Drittanbietern verwenden, um die Anpassbarkeit und Funktionalität der Konvertierung zu verbessern.

In diesem Artikel werden wir verschiedene Möglichkeiten untersuchen, um von PHP zurückgegebene Objekte in Arrays zu konvertieren. Bei diesen Methoden verwenden wir die PHP 7-Syntax. Sie können die Syntax in diesen Beispielcodes jedoch problemlos an frühere PHP-Versionen anpassen.

  1. Typumwandlung verwenden

Lassen Sie uns zunächst den einfachsten Weg vorstellen – die Verwendung von Typumwandlung. Diese Methode ist die einfachste Möglichkeit, ein Objekt in ein Array umzuwandeln, und sie ist auch die häufigste Art, sie zu verwenden.

Bei der Typumwandlung müssen wir das Objekt nur mit einem Array-Schlüsselwort umgeben. Zum Beispiel:

<?php
// a sample object
$obj = (object) ['foo' => 'bar', 'property' => 1];

// using type casting to convert object to array
$array = (array) $obj;

// displaying the array
print_r($array);
?>
Nach dem Login kopieren

Die Ausgabe lautet wie folgt:

Array
(
    [foo] => bar
    [property] => 1
)
Nach dem Login kopieren
Nach dem Login kopieren

Wie Sie sehen können, können wir Typumwandlung verwenden, um das Objekt $obj in das Array $array umzuwandeln. Sobald die Konvertierung abgeschlossen ist, können wir die Funktion print_r() verwenden, um den Inhalt des Arrays anzuzeigen.

  1. Verwenden Sie die Funktion get_object_vars() zum Konvertieren.

Zweitens verwenden wir eine in PHP integrierte Verknüpfung – die Funktion get_object_vars(). Diese Funktion gibt ein assoziatives Array zurück, das aus als Schlüssel benannten Objektattributen und Attributwerten als Werten besteht.

Bei Verwendung dieser Methode müssen wir das Objekt nur über die Funktion get_object_vars() bedienen und seine Ergebnisse in einem Array speichern. Zum Beispiel:

<?php
// a sample object
$obj = (object) ['foo' => 'bar', 'property' => 1];

// using get_object_vars() function to convert object to array
$array = get_object_vars($obj);

// displaying the array
print_r($array);
?>
Nach dem Login kopieren

Die Ausgabe lautet:

Array
(
    [foo] => bar
    [property] => 1
)
Nach dem Login kopieren
Nach dem Login kopieren

Wie Sie sehen können, übergeben wir das Objekt $obj an die Funktion get_object_vars() und speichern sein Ergebnis im Array $array. In diesem Beispiel gibt die Funktion dasselbe Ergebnis zurück wie im Typumwandlungsbeispiel.

  1. Verwenden Sie die Funktionen serialize() und unserialize() zum Konvertieren.

Drittens: Wenn das Objekt komplexer ist oder wir mehrere Objekte in einem Array zusammenführen möchten, können wir die Funktionen serialize() und unserialize() verwenden. Funktionen, um es leicht zu erreichen. Die Serialisierungsfunktion serialize() kann ein Objekt in eine Zeichenfolge serialisieren, und die Funktion unserialize() kann die Zeichenfolge in ein Objekt deserialisieren.

Bei diesem Ansatz müssen wir das Objekt zuerst serialisieren, um es in einen String konvertieren und in einem Array speichern zu können. Zum Beispiel:

<?php
// a sample object
$obj1 = (object) ['foo' => 'bar', 'property' => 1];
$obj2 = (object) ['abc' => 'def', 'number' => 100];

// serialize objects to string, and then concatenate two strings into one
$str = serialize($obj1) . serialize($obj2);

// unserialize the concatenated string to array
$array = unserialize($str);

// displaying the array
print_r($array);
?>
Nach dem Login kopieren

Die Ausgabe lautet wie folgt:

Array
(
    [foo] => bar
    [property] => 1
    [abc] => def
    [number] => 100
)
Nach dem Login kopieren

Wie Sie sehen können, haben wir in diesem Beispiel zwei Objekte $obj1 und $obj2 erstellt und sie in Strings serialisiert. Als Nächstes verketten wir die beiden Zeichenfolgen mit dem Punktoperator und übergeben diese verkettete Zeichenfolge an die Funktion unserialize(), um sie in ein Array $array zu deserialisieren. Dieses Array enthält alle Eigenschaften und Werte beider Objekte.

Fazit

In diesem Artikel haben wir drei Möglichkeiten kennengelernt, von PHP zurückgegebene Objekte in Arrays zu konvertieren: Typumwandlung, Konvertierung mit der Funktion get_object_vars() und Konvertierung mit den Funktionen serialize() und unserialize(). Der Einsatz dieser Methoden hängt von Ihren spezifischen Bedürfnissen ab. Wenn Sie auf komplexe Objekte stoßen oder mehrere Objekte konvertieren müssen, ist die Verwendung der Funktionen serialize() und unserialize() möglicherweise die bessere Wahl. Für einfache Objekte kann es jedoch einfacher sein, eine Typumwandlung oder die Funktion get_object_vars() zu verwenden.

Das obige ist der detaillierte Inhalt vonPHP-Rückgabeobjekt in Array konvertiert. 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