在 PHP 中使用动态键迭代对象
在 PHP 中使用对象时,您可能会遇到键是动态且未知的情况预先。要有效地导航此类对象,您可以利用 PHP 的内置函数和功能。
JSON 解析
如果您有一个 JSON 文件,例如这个问题,你可以使用 json_decode 将其解析为 PHP 变量。这将创建一个关联数组,其中键是属性名称,值是相应的值。
动态键迭代
迭代对象并访问动态键,您可以使用 RecursiveArrayIterator。该迭代器允许您分层遍历对象,递归调用 next() 和 rewind() 方法。
示例代码
以下代码片段演示了如何迭代通过动态的物体键:
$jsonString = file_get_contents('/home/michael/test.json'); $jsonObject = json_decode($jsonString, true); $jsonIterator = new RecursiveIteratorIterator( new RecursiveArrayIterator($jsonObject), RecursiveIteratorIterator::SELF_FIRST ); foreach ($jsonIterator as $key => $value) { if (is_array($value)) { echo "$key:\n"; } else { echo "$key => $value\n"; } }
输出
通过执行代码,您将获得以下输出:
John: status => Wait Jennifer: status => Active James: status => Active age => 56 count => 10 progress => 0.0029857 bad => 0
此输出演示了如何可以迭代对象,访问动态键及其相应的值。
以上是如何使用动态键迭代 PHP 对象?的详细内容。更多信息请关注PHP中文网其他相关文章!