Heim >Backend-Entwicklung >PHP-Problem >Kann PHP Objekte in Arrays konvertieren?
php kann Objekte in Arrays konvertieren: 1. Verwenden Sie json_encode, um das Objektarray in einen String umzuwandeln. 2. Verwenden Sie json_decode(), um den String in ein Array umzuwandeln.
Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP-Version 7.1, DELL G3-Computer
Kann PHP Objekte in Arrays konvertieren?
php Objekte in Arrays konvertieren
Anweisungen
Während des Entwicklungsprozesses werden wir auf Situationen stoßen, in denen wir instanziierte Objekte in Arrays konvertieren müssen
Zum Beispiel möchte ich die verarbeiteten Daten nach Excel exportieren, aber das Excel Nur Export
unterstützt den Array-Formattyp
Beispiel
Im folgenden Code muss ich beispielsweise die Wertdaten als Array-Typ zurückgeben
Obwohl sie in ein Array serialisiert sind, wird hier ein Objektarray zurückgegeben Zeit
$data=$orderList->getCollection()->map(function ($order){ return new OrderResponse($order); }); dd($data->toArray());
Die Rückgabe ist wie folgt
^ array:8 [ 0 => app\admin\Responses\OrderResponse {#122 +"statistical_date": "2021-09-10" +"order_num": 1 +"play_type_count": 1 +"invalid_order_count": 1 } 1 => app\admin\Responses\OrderResponse {#119 +"statistical_date": "2021-09-09" +"order_num": 6 +"play_type_count": 6 +"invalid_order_count": 3 } ]
Verarbeitungsmethode
Verwenden Sie json_decode(), um die Zeichenfolge in ein Array umzuwandeln
Konvertieren Sie zuerst das Objektarray mit json_encode in eine Zeichenfolge und dann in ein Array.
$data=json_decode(json_encode($data),true); 返回如下 CopyCopy array:8 [ 0 => array:4 [ "statistical_date" => "2021-09-10" "order_num" => 1 "play_type_count" => 1 "invalid_order_count" => 1 ] 1 => array:4 [ "statistical_date" => "2021-09-09" "order_num" => 6 "play_type_count" => 6 "invalid_order_count" => 3 ] ]
Empfohlen Lernen: „PHP-Video-Tutorial“
Das obige ist der detaillierte Inhalt vonKann PHP Objekte in Arrays konvertieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!