Heim  >  Artikel  >  Backend-Entwicklung  >  Konvertieren Sie ein Objekt in ein Array in PHP

Konvertieren Sie ein Objekt in ein Array in PHP

WBOY
WBOYnach vorne
2023-09-09 17:53:081000Durchsuche

Konvertieren Sie ein Objekt in ein Array in PHP

In PHP-Anwendungen haben wir es mit Daten in verschiedenen Formaten wie Strings, Arrays, Objekten usw. zu tun. In Echtzeitanwendungen müssen wir möglicherweise PHP-Objektergebnis-Arrays in assoziativer Form lesen, um die gewünschte Ausgabe zu erhalten.

Hier besprechen wir also, wie man ein PHP-Objekt in ein assoziatives Array in PHP umwandelt.

Lassen Sie uns erklären, was Objekte und assoziative Arrays in PHP sind. Objekte sind Instanzen von Klassen, was bedeutet, dass Sie aus einer Klasse viele Objekte erstellen können. Es ist nur ein Beispiel einer Klasse mit zugewiesenem Speicher. Andererseits wird ein Array, das aus Zeichenfolgen als Indizes besteht, als assoziatives Array bezeichnet. Es enthält ein Schlüssel-Wert-Paar, wobei Werte ihren jeweiligen Schlüsseln zugeordnet sind.

Lassen Sie uns nun die verschiedenen Möglichkeiten besprechen, ein Objekt in ein Array umzuwandeln.

Methode 1:

Verwendung der json_decode- und json_encode-Technologie:

Zunächst gibt die Funktion json_encode() die JSON-codierte Zeichenfolge des angegebenen Werts zurück. Die Funktion json_decode() konvertiert es in ein PHP-Array.

Beispiel:

<?php
   class student {
      public function __construct($firstname, $lastname) {
         $this->firstname = $firstname;
         $this->lastname = $lastname;
      }
   }
   $myObj = new student("Alex", "Stokes");
   echo "Before conversion:".&#39;</br>&#39;;
   var_dump($myObj);
   $myArray = json_decode(json_encode($myObj), true);
   echo "After conversion:".&#39;</br>&#39;;
   var_dump($myArray);
?>

Ausgabe:

Before conversion:
object(student)#1 (2) { ["firstname"]=> string(4) "Alex" ["lastname"]=> string(6) "Stokes" }
After conversion:
array(2) { ["firstname"]=> string(4) "Alex" ["lastname"]=> string(6) "Stokes" }

Erläuterung:

Hier haben wir eine Klasse Student erstellt und eine __construct()-Funktion in der Klasse deklariert, die ausgeführt wird, wenn das Objekt erstellt wird. Der Konstruktor empfängt Parameter, die später beim Erstellen des Objekts mit dem Schlüsselwort new bereitgestellt werden. Im ersten var_dump()-Ausdruck drucken wir das Objekt, aber im zweiten Fall konvertieren wir das Objekt mithilfe der json_decode- und json_encode-Techniken in ein Array.

Methode 2:

Konvertieren Sie ein Objekt mithilfe der Typkonvertierungstechnik in ein Array:

Die Typkonvertierung ist eine Methode zur Verwendung einer Datentypvariablen in einen anderen Datentyp. Es handelt sich lediglich um eine exakte Konvertierung des Datentyps.

<?php
   class bag {
      public function __construct( $item1, $item2, $item3){
         $this->item1 = $item1;
         $this->item2 =$item2;
         $this->item3 = $item3;
      }
   }
   $myBag = new bag("Books", "Ball", "Pens");
   echo "Before conversion :".&#39;</br>&#39;;
   var_dump($myBag);
   $myBagArray = (array)$myBag;
   echo "After conversion :".&#39;</br>&#39;;
   var_dump($myBagArray);
?>

Ausgabe:

Before conversion :
object(bag)#1 (3) { ["item1"]=> string(5) "Books" ["item2"]=> string(4) "Ball" ["item3"]=> string(4) "Pens" }
After conversion:
array(3) { ["item1"]=> string(5) "Books" ["item2"]=> string(4) "Ball" ["item3"]=> string(4) "Pens" }

Erläuterung:

Hier haben wir eine Klasse namens „bag“ erstellt und innerhalb dieser Klasse eine __construct()-Funktion deklariert, die ausgeführt wird, wenn das Objekt erstellt wird. Der Konstruktor empfängt Parameter, die beim Erstellen eines Objekts mit dem Schlüsselwort new bereitgestellt werden. Im ersten var_dump()-Ausdruck drucken wir nur das Objekt, aber im zweiten Fall verwenden wir eine Typhinweisprozedur, um das Objekt in ein Array umzuwandeln.

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

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen