php將物件轉換成陣列的方法:1、建立一個php範例檔案;2、將物件陣列使用「json_encode」函數轉換為字串;3、使用「json_decode」再轉為陣列即可。
本教學操作環境:windows10系統、PHP8.1版、DELL G3電腦
#開發過程中我們會遇到需要將實例化的物件轉換為陣列的情況
例如我想將處理過後的資料進行excel匯出但是excel匯出只
支援陣列格式類型
範例
例如下面這個程式碼我需要傳回值data為陣列類型,
雖然序列化為陣列但是此時傳回的是物件陣列
$data=$orderList->getCollection()->map(function ($order){ return new OrderResponse($order); }); dd($data->toArray());
傳回如下
^ 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 } ]
利用json_decode() 將字串轉換為陣列
先將物件陣列使用json_encode轉換為字串然後再轉為陣列即可
$data=json_decode(json_encode($data),true);
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 ] ]
推薦學習:《PHP影片教學》
以上是php怎麼將物件轉成數組的詳細內容。更多資訊請關注PHP中文網其他相關文章!