Foreach ループでの配列値の変更
PHP では、オブジェクトの配列を操作し、実行中に各オブジェクトに対して操作を実行することがよくあります。 foreach ループ。一般的なタスクの 1 つは、各オブジェクトの追加データをフェッチし、そのプロパティを更新することです。
Foreach ループでオブジェクトを変更することは可能ですか?
はい、変更できますforeach ループ内の現在のオブジェクト。 2 つのアプローチがあります:
1.配列キー保持の使用:
foreach($questions as $key => $question){ $questions[$key]['answers'] = $answers_model->get_answers_by_question_id($question['question_id']); }
このメソッドは配列キーを保持し、元の $questions 配列を更新できるようにします。
2.参照割り当ての使用:
foreach($questions as &$question){
$question の前に & を追加すると、参照割り当てが作成されます。これは、ループ内で $question に加えられたすべての変更が元の $questions 配列に反映されることを意味します。
どのアプローチが推奨されますか?
参照代入アプローチより簡潔であるため、一般的には配列キーの保存方法を使用することをお勧めします。これは、変更される配列要素を明示的に制御できるためです。
以上がPHP Foreach ループ内で配列オブジェクトを変更できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。