問題:
是否可以編輯目前正在處理的物件循環?
上下文:
您在資料庫中有一個物件數組($questions)以及關聯的答案。您正在嘗試在循環迭代期間為每個問題物件取得這些答案。
解:
您可以使用一個方法在 foreach循環中修改目前物件以下方法之一:
Key賦值:
foreach($questions as $key => $question){ $questions[$key]['answers'] = $answers_model->get_answers_by_question_id($question['question_id']); }
此方法保留數組鍵,讓您可以直接更新值。
參考賦值:
foreach($questions as &$question){ $question['answers'] = $answers_model->get_answers_by_question_id($question['question_id']); }
在變數名稱之前加上與號(&)對物件的引用,可以在循環內直接修改。
推薦:
雖然引用賦值方法簡潔,但鍵賦值通常建議使用這種方法,因為它可以確保多維數組中的可預測行為。
以上是我可以直接在 Foreach 迴圈中修改陣列物件嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!