ホームページ > バックエンド開発 > PHPの問題 > PHPはオブジェクトを配列に変換できますか?

PHPはオブジェクトを配列に変換できますか?

藏色散人
リリース: 2023-03-13 10:20:01
オリジナル
1990 人が閲覧しました

php はオブジェクトを配列に変換できます。変換方法は次のとおりです: 1. json_encode を使用してオブジェクトの配列を文字列に変換します。 2. json_decode() を使用して文字列を配列に変換します。

PHPはオブジェクトを配列に変換できますか?

この記事の動作環境: Windows7 システム、PHP バージョン 7.1、DELL G3 コンピューター

PHP でオブジェクトを配列に変換できますか? ?

php オブジェクトを配列に変換する

手順

開発プロセス中に、インスタンス化されたオブジェクトを配列に変換する必要がある場合があります。

たとえば、加工したデータを Excel にエクスポートしたいのですが、Excel エクスポートは配列形式のみをサポートしています

たとえば、以下のコードは戻り値のデータを配列型にする必要があります。

配列にシリアル化していますが、この時点ではオブジェクト配列が返されます。

1

2

3

4

$data=$orderList->getCollection()->map(function ($order){

           return new OrderResponse($order);

       });

   dd($data->toArray());

ログイン後にコピー

戻り値は次のようになります。以下に続きます

1

2

3

4

5

6

7

8

9

10

11

12

13

14

^ 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 を使用してオブジェクト配列を文字列に変換し、次にそれをarray

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

$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 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート