首頁 > 後端開發 > PHP問題 > php能把物件轉換成陣列嗎

php能把物件轉換成陣列嗎

藏色散人
發布: 2023-03-13 10:20:01
原創
1905 人瀏覽過

php能把物件轉換為數組,其轉換方法為:1、將物件陣列使用json_encode轉換為字串;2、利用json_decode()將字串轉換為陣列即可。

php能把物件轉換成陣列嗎

本文操作環境:windows7系統、PHP7.1版、DELL G3電腦

php能把物件轉換成陣列嗎?

php 將物件轉換為陣列

說明

開發過程中我們會遇到需要將實例化的物件轉換為陣列的情況

例如我想將處理過後的資料進行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);
返回如下
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
  ]
]
登入後複製

推薦學習:《PHP影片教學

以上是php能把物件轉換成陣列嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
php
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板