PHP オブジェクトを連想配列に簡単に変換
オブジェクト指向構造を利用する API と統合する場合、これらのオブジェクトを変換する必要があります既存のコードとの互換性を保つために連想配列に変換します。 PHP でこの変換を実現する簡単で効率的な方法は次のとおりです。
解決策: 型キャスト
オブジェクトを配列に型キャストするだけで、そのキーを含む連想配列に変換されます。はオブジェクトのプロパティ名です。
$array = (array) $yourObject;
この型キャストはディープ キャストを実行しないため、オブジェクトにネストされたオブジェクトが含まれている場合、それらは配列に変換されません。ただし、これはパブリック プロパティを持つオブジェクトや単純な StdClass オブジェクトに適しています。
複雑なオブジェクトとプロパティのアクセシビリティ
より複雑なオブジェクトの場合、型キャストでは望ましい結果が得られない可能性があります。 。 PHP には、型キャストされた配列内の非パブリック プロパティにアクセスするための特定のルールがあります。
例:
class Foo { private $foo; protected $bar; public $baz; } var_dump((array) new Foo());
出力:
array(3) { ["Foofoo"] => int(1) ["*bar"] => int(2) ["baz"] => StdClass Object ( ... ) }
ディープ キャストと追加リソース
オブジェクト グラフのディープ キャストが必要な場合または、この変換手法についてさらに詳しく知りたい場合は、次のリソースを参照することを検討してください:
以上がPHP オブジェクトを連想配列に簡単に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。