>  기사  >  백엔드 개발  >  PHP의 함수 - foreach() 사용법에 대한 자세한 설명

PHP의 함수 - foreach() 사용법에 대한 자세한 설명

高洛峰
高洛峰원래의
2017-01-16 13:20:031502검색

PHP 4에서는 Perl 및 기타 언어와 마찬가지로 foreach 구문이 도입되었습니다. 이는 배열을 반복하는 편리한 방법일 뿐입니다. foreach는 배열에만 사용할 수 있으며, 다른 데이터 유형이나 초기화되지 않은 변수와 함께 사용하려고 하면 오류가 발생합니다. 두 가지 구문이 있는데, 두 번째 구문은 덜 중요하지만 첫 번째 구문의 유용한 확장입니다.

foreach (array_expression as $value)
    statement
foreach (array_expression as $key => $value)
    statement

첫 번째 형식은 지정된 array_expression 배열을 반복합니다. 루프를 통과할 때마다 현재 셀의 값이 $value에 할당되고 배열 내부의 포인터가 한 단계 앞으로 이동합니다(따라서 다음 루프에서 다음 셀을 얻습니다).

두 번째 형식은 현재 셀의 키 이름이 각 루프의 $key 변수에도 할당된다는 점을 제외하면 동일한 작업을 수행합니다.
PHP 5부터는 객체 순회도 가능합니다.

참고: foreach 실행이 시작되면 배열 내부의 포인터가 자동으로 첫 번째 유닛을 가리킵니다. 이는 foreach 루프 전에 Reset()을 호출할 필요가 없음을 의미합니다.

참고: 배열을 참조하지 않는 한 foreach는 배열 자체가 아닌 지정된 배열의 복사본에서 작동합니다. foreach에는 배열 포인터에 몇 가지 부작용이 있습니다. 재설정되지 않는 한 foreach 루프 도중이나 이후에 배열 포인터 값을 사용하지 마세요.
PHP 5부터는 $value 앞에 &를 추가하여 배열 요소를 쉽게 수정할 수 있습니다. 이 방법은 값을 복사하는 대신 참조로 할당합니다.

<?php
$arr = array(1, 2, 3, 4);
foreach ($arr as &$value) {
    $value = $value * 2;
}
// $arr is now array(2, 4, 6, 8)
?>

이 메서드는 탐색 중인 배열을 참조할 수 있는 경우에만 사용할 수 있습니다(예: 변수).

<?php
foreach (array(1, 2, 3, 4) as &$value) {
    $value = $value * 2;
}
?>

PHP의 더 많은 기능 - foreach() 사용법에 대한 자세한 설명을 보려면 PHP 중국어 웹사이트에서 관련 기사를 주목하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.