foreach는 다음과 같이 $value 앞에 &를 추가하여 배열 요소를 쉽게 수정할 수 있습니다.
PHP 코드
코드 복사 코드는 다음과 같습니다.
foreach($arr as $value){
$value .= '4'
}
코드 복사 코드는 다음과 같습니다.
$arr = array('a','b','c')
$arr2 = array('d', 'e', 'f' );
foreach($arr as $ value){//$value 또는 $val을 사용하는 데 사용됩니다.
$value .= '4'}
//모든 것이 처리된 후 페이지 템플릿에 출력하고, 먼저 $arr2를 출력합니다.
foreach( $arr2 as $value){//$value 또는 $val을 사용하는 데 사용됩니다.
//echo $value; /그런 다음 $arr를 다음과 같이 출력합니다.
foreach($arr as $ value){//$value 또는 $val을 사용하는 데 사용됩니다.
echo $value, "n"}
?> ;
출력 결과가 예상과 일치하는지 확인해 보겠습니다. 결과는 다음과 같습니다.
코드는 다음과 같습니다.XML/HTML 코드a4
b4b4
인용으로 인한 문제입니다.
foreach($arr as &$value)가 배열을 끝까지 순회할 때 참조 관계가 깨지지 않습니다. 이는 $value 및 $arr의 마지막 단위인 $arr[2에 대한 참조와 동일합니다. ].
foreach($arr2 as $value)로 가면 $value의 값은 항상 배열 단위의 값으로 변경되므로 참조 관계가 깨지지 않으므로 $arr[2]의 값도 그에 따라 변경됩니다. $arr2가 탐색될 때까지 $value의 값은 f이므로 $arr[2]의 값도 f입니다.
코드는 다음과 같습니다. 배열 (
[0] => a4[1] => b4
[2] => f
)
이것은 우리가 보는 최종 출력과 다릅니다. 그런 다음 foreach($arr as $value)로 이동합니다. 마찬가지로 $arr[2]의 값도 $value로 변경됩니다. 즉, $arr[1], $arr[2 ] 값은 $arr[1]의 값, 즉 b4가 됩니다. 그런 다음 키가 2일 때 $arr[2]의 값은 $arr[2]의 값인 b4가 됩니다. 출력한 결과입니다.
따라서 foreach에서 참조를 사용할 때는 주의하세요. 처리 후 즉시 참조 관계를 끊어서 나중에 위와 같은 상황이 발생하지 않도록 할 수도 있습니다.
PHP 코드
코드는 다음과 같습니다.foreach($arr as $value){ $ 값 .= '4'
}설정 해제($value)
위 내용은 야외연구 내용을 포함하여 PHP foreach에서 & 및 연산자 참조 할당을 사용할 때 주의해야 할 사항을 소개하고 있어 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.