PHP 개발에서는 종종 배열을 반복하고 해당 요소의 값을 수정합니다. 다른 언어에 대한 경험이 있다면 여기서 실수할 가능성이 있습니다.
저는 Java에 비교적 익숙하기 때문에 Java를 예로 들어보겠습니다. Java에서는 배열을 반복하고 해당 값을 수정합니다.
<span> </span>for(Object item : objectArray){ <span> </span>item.setAttribute('value'); <span> </span>}
foreach($arrays as $item){ $item->name = 'value'; } echo $arrays[0]->name;
약간의 디버깅 끝에 마침내 위 코드가 참조 대신 값을 전달했는지 추측했습니다. 그래서 공식 웹사이트에 가서 문서를 확인했고 이것이 실제로 사실이라는 것을 알았습니다. 그래서 코드를 다음과 같이 수정했습니다:
foreach($arrays as &$item){ $item->name = 'value'; } echo $arrays[0]->name;또는 다음과 같이:
foreach($arrays as $key=>$item){ $arrays[$key]->name = 'value'; } echo $arrays[0]->name;두 방법 모두 결과는 괜찮습니다. 그러므로 나는 더 많은 공식 문서를 읽어야 한다고 생각한다. 처음에는 일반적인 내용만 살펴보고 자세히 읽지도 않은 채 프로젝트 작업을 시작했습니다.
참고 자료:
PHP 공식 웹사이트 foreach 설명: http://php.net/manual/en/control-structures.foreach.php
추가 정보 , WeChat 공개 계정을 팔로우하세요: 개발 및 생활
위 내용은 PHP foreach의 측면을 포함하여 소개되었으며, PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.