在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中文網其他相關文章!