JSON データを操作する場合、名前と値が事前に不明な動的キーを持つオブジェクトに遭遇することがよくあります。このようなシナリオでは、foreach ループの使用が不可欠になります。
次の JSON 構造を考えてみましょう:
{ "John": { "status": "Wait" }, "Jennifer": { "status": "Active" }, "James": { "status": "Active", "age": 56, "count": 10, "progress": 0.0029857, "bad": 0 } }
このオブジェクトを反復処理するには、RecursiveArrayIterator クラスを利用できます。これにより、走査が可能になります。多次元配列を再帰的に処理します。以下のコードはその使用法を示しています:
$jsonIterator = new RecursiveIteratorIterator( new RecursiveArrayIterator(json_decode($json, TRUE)), RecursiveIteratorIterator::SELF_FIRST ); foreach ($jsonIterator as $key => $val) { if (is_array($val)) { echo "$key:\n"; } else { echo "$key => $val\n"; } }
このコードは JSON オブジェクトを反復処理し、キーと値の両方を出力します:
John: status => Wait Jennifer: status => Active James: status => Active age => 56 count => 10 progress => 0.0029857 bad => 0
RecursiveArrayIterator を使用すると、JSON を効率的に処理できます。さまざまなキー構造を持つオブジェクトを使用して、PHP アプリケーションに柔軟性と使いやすさを提供します。
以上が動的キーを使用して PHP オブジェクトを反復処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。