PHP オブジェクトを連想配列に変換する
オブジェクトを利用する API を統合し、コードで配列を使用する場合、一方を他方に変換する必要があります。が生じます。この目的のための、シンプルで効率的な解決策は、次のような配列にオブジェクトを型キャストすることです:
$array = (array) $yourObject;
この手っ取り早い方法では、メンバー変数名としてキー、対応する値として値を持つ配列が生成されます。オブジェクトのプロパティ。注目すべき例外には、アクセスできない整数プロパティ、接頭辞付きの保護変数 ('*')、および接頭辞付きのプライベート変数 (' ' クラス名 ' ') が含まれます。
単純なオブジェクトの場合、その配列表現は次のようになります。
var_dump( (array) $object ); // Output array(2) { 'foo' => int(1) 'bar' => int(2) }
より複雑なオブジェクトの場合、出力には、次のように、保護プロパティとプライベート プロパティのプレフィックスとして null バイトと特殊文字が含まれる場合があります。例:
var_dump( (array) new Foo ); // Output array(3) { 'Foofoo' => int(1) '*bar' => int(2) 'baz' => class stdClass#2 (0) {} }
ただし、この型キャスト手法はオブジェクト グラフをディープ キャストしないことに注意することが重要です。これは、StdClass オブジェクトまたはパブリック プロパティのみを持つオブジェクトに最適です。詳細なキャスト オプションとより詳細な洞察については、提供されているドキュメントとブログ投稿のリンクを参照してください。
以上がPHP オブジェクトを連想配列に効率的に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。