> 백엔드 개발 > PHP 문제 > PHP에서 배열을 순회하는 네 가지 방법은 무엇입니까?

PHP에서 배열을 순회하는 네 가지 방법은 무엇입니까?

青灯夜游
풀어 주다: 2023-03-15 17:36:01
원래의
5053명이 탐색했습니다.

네 가지 방법: 1. "for($i=0;$i

PHP에서 배열을 순회하는 네 가지 방법은 무엇입니까?

이 튜토리얼의 운영 환경: Windows 7 시스템, PHP 버전 7.1, DELL G3 컴퓨터

방법 1: for 문을 사용하여 탐색

for 루프는 변수를 미리 정의합니다. 이는 for 문의 루프 수를 제어하므로 for 루프 문은 알려진 루프 수에 따라 루프 작업을 수행할 수 있으며, 이는 스크립트를 실행해야 하는 횟수가 명확하게 알려진 상황에 적합합니다.

for 루프의 구문 형식은 다음과 같습니다.

for (初始化语句; 循环条件; 变量更新--自增或自减) {
    语句块;   
}
로그인 후 복사

문 분석:

  • 초기화 문(표현식 1): 주로 카운터를 설정하는 데 사용되는 변수 값을 초기화하는 데 사용됩니다. 루프 시작 부분의 값입니다. 이 문만 첫 번째 루프 동안 실행되며 이후에는 다시 실행되지 않습니다.

  • 루프 조건(표현식 2): 루프 실행의 제한 조건으로, 루프 본문의 코드 실행 여부를 제어하는 ​​데 사용됩니다. 조건이 TRUE이면 루프가 계속되고, 조건이 FALSE이면 루프가 종료됩니다. 그리고 루프는 즉시 종료됩니다.

  • 변수 업데이트(식 3): 루프가 실행될 때마다 카운터 값이 즉시 수정되어 루프 조건이 점차 "참이 아님"이 됩니다.

  • Statement 블록: 조건이 참이라고 판단될 때 실행해야 하는 여러 코드입니다.

<?php
header("Content-type:text/html;charset=utf-8");
$array= array(2,"数学","梨子",3.14,"榴莲",12);
for ($i=0; $i < count($array); $i++) { 
    echo $array[$i] . "<br/>";
} 
?>
로그인 후 복사

출력 결과:

2
数学
梨子
3.14
榴莲
12
로그인 후 복사

foreach 문을 사용하여 순회

foreach는 배열 순회를 위해 특별히 설계된 문입니다. PHP5 이후에는 객체를 탐색할 수도 있습니다(foreach는 배열과 객체에만 적용할 수 있습니다).

foreach 문은 배열 첨자에 관계없이 배열을 순회하며 불연속 인덱스 배열 및 문자열을 첨자로 사용하는 연관 배열에 사용할 수 있습니다.

foreach 문 분석

먼저 foreach 문을 살펴보겠습니다. 이 문에는 두 가지 구문 형식이 있습니다.

문법 형식 1:

foreach ($array as $value){
    语句块;
}
로그인 후 복사

주어진 $array 배열을 탐색하고 현재 값을 변경합니다. 배열은 $value에 할당됩니다.

구문 형식 2:

foreach ($array as $key => $value){
    语句块;
}
로그인 후 복사

주어진 $array 배열을 탐색하고 각 루프에서 현재 배열의 값이 $value에 할당되고 키 이름이 $key에 할당됩니다.

설명:

Foreach 문이 루프될 때마다 배열 내부의 포인터가 한 단계 앞으로 이동하므로 배열의 끝으로 이동할 때까지 다음 루프에서 다음 배열 요소를 얻습니다. , 순회를 중지하고 루프를 종료합니다.

예:

<?php
header("Content-type:text/html;charset=utf-8");
$array= array("香蕉","苹果","梨子","橙子","橘子","榴莲");
foreach ($array as $val){
    echo "值是:" . $val ;
    echo "<br/>";
}
echo "<br/>";
foreach ($array as $key => $value) { 
    echo "键名为:".$key.",键值为:".$value . "<br/>";
} 
?>
로그인 후 복사

출력 결과:

PHP에서 배열을 순회하는 네 가지 방법은 무엇입니까?

방법 3: while 문 +each()+list()를 사용하여

each() 함수를 순회하여 현재 키를 반환합니다. 값을 배열에 저장하고 배열 포인터를 앞으로 이동합니다. Each()가 실행된 후 배열 포인터는 배열의 다음 요소에 유지되거나 배열 끝에 도달하면 마지막 요소에 유지됩니다.

list() 함수는 한 번의 작업으로 변수 집합에 값을 할당하는 데 사용됩니다.

while 루프 + Each() 함수 + list() 함수는 배열을 순회할 수 있습니다. 아래 코드 예제를 살펴보겠습니다.

<?php
header("Content-type:text/html;charset=utf-8");
$array= array("香蕉","苹果","梨子","橙子","橘子","榴莲");
while( list($key, $val) = each($array) ) {
    echo "$key => $val<br>";
}
?>
로그인 후 복사

출력 결과:

PHP에서 배열을 순회하는 네 가지 방법은 무엇입니까?

방법 4: do-while 사용 명령문 + next ()+key()+current() traverse

PHP의 모든 배열에는 내부 포인터가 있습니다. 즉, 이 포인터는 배열의 요소를 가리킵니다. 요소는 기본적으로 처음에 배열의 첫 번째 요소를 가리킵니다.

  • next() 함수는 배열의 내부 포인터가 가리키는 다음 요소의 값을 반환할 수 있으며 더 이상 요소가 없으면 FALSE를 반환합니다.

  • key() 함수는 배열에 있는 현재 요소의 키 이름을 가져오는 데 사용됩니다.

  • current() 함수는 배열의 현재 요소에 대한 키 값을 반환합니다.

do-while 루프 +next()+key()+current()를 사용하여 배열을 순회하고 배열 요소의 키 이름과 키 값을 가져옵니다.

아래 코드 예를 살펴보겠습니다.

<?php
header("Content-type:text/html;charset=utf-8");
$array= array("香蕉","苹果","梨子","橙子","橘子","榴莲");
do{
	 echo key($array)." => ".current($array)."<br>";
}while(next($array));
?>
로그인 후 복사

출력 결과:

PHP에서 배열을 순회하는 네 가지 방법은 무엇입니까?

순회가 완료된 후 배열 포인터는 마지막 배열 요소를 가리킬 것입니다. 재설정() 함수를 사용하여 재설정할 수 있습니다. 배열 포인터를 삭제하고 배열을 교체합니다. 내부 포인터는 첫 번째 요소를 다시 가리킵니다.

추천: "PHP 비디오 튜토리얼"

위 내용은 PHP에서 배열을 순회하는 네 가지 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿