PHP で stdClass オブジェクトを配列に変換する [重複]
PHP でデータベースの結果を操作する場合、データがstdClass クラスのオブジェクトとして取得されます。オブジェクトのナビゲーションは便利ですが、オブジェクトを配列に変換し直す必要がある場合もあります。
次のようにデータベースから投稿 ID を取得したシナリオを考えてみましょう。
$post_id = $wpdb->get_results("SELECT post_id FROM $wpdb->postmeta WHERE (meta_key = 'mfn-post-link1' AND meta_value = '". $from ."')");
これは、以下に示すように、stdClass オブジェクトの配列:
Array ( [0] => stdClass Object ( [post_id] => 140 ) [1] => stdClass Object ( [post_id] => 141 ) [2] => stdClass Object ( [post_id] => 142 ) )
このオブジェクトの配列を post の単純な配列に変換するにはID については、2 つのアプローチを活用できます:
$array = json_decode(json_encode($post_id), true);
$array = []; foreach ($post_id as $value) $array[] = $value->post_id;
両方のメソッドで目的の配列が生成されます:
Array ( [0] => 140 [1] => 141 [2] => 142 )
を利用することでこれらの手法を使用すると、stdClass オブジェクトを配列にシームレスに変換でき、必要に応じてデータを操作および処理できるようになります。
以上がPHP で stdClass オブジェクトを配列に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。