질문:
내에서 처리 중인 현재 개체를 편집할 수 있습니까? foreach 루프?
컨텍스트:
데이터베이스에 연결된 답변이 있는 개체 배열($questions)이 있습니다. 루프 반복 중에 각 질문 개체에 대해 이러한 답변을 가져오려고 합니다.
해결책:
다음을 사용하여 foreach 루프 내에서 현재 개체를 수정할 수 있습니다. 다음 방법 중 하나:
키 할당:
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 중국어 웹사이트의 기타 관련 기사를 참조하세요!