在处理 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中文网其他相关文章!