공식 문서에서는 foreach의 두 가지 용도를 제공합니다.
foreach 구문 구조는 배열을 탐색하는 간단한 방법을 제공합니다. foreach는 배열과 객체에만 적용할 수 있습니다. 다른 데이터 유형의 변수나 초기화되지 않은 변수에 적용하려고 하면 오류 메시지가 표시됩니다.
두 가지 구문이 있습니다:
foreach (array_expression as $value) statement foreach (array_expression as $key => $value) statement
첫 번째 형식은 주어진 array_expression 배열을 반복합니다. 루프를 통과할 때마다 현재 셀의 값이 $value에 할당되고 배열 내부의 포인터가 한 단계 앞으로 이동합니다(따라서 다음 루프에서 다음 셀을 얻습니다).
두 번째 형식은 현재 장치의 키 이름이 각 루프의 $key 변수에도 할당된다는 점을 제외하면 동일한 작업을 수행합니다.
추천 관련 기사:
1.PHP의 2차원 배열이란 무엇인가요? php의 2차원 배열 예제에 대한 자세한 설명
2.2차원 배열에서 PHP의 해당 작업
추천 동영상:
1. Dugu Jiujian (4)_PHP 동영상 튜토리얼
두 번째 코드를 살펴보겠습니다.
$a = array( "one" => array(1,2,3,4), "two" => array(5,6,7,8), "three" => array('a','b','c','d') ); foreach ($a as $k => $v) { echo $k . '<br>'; print_r($v); echo '<br>'; foreach ($a[$k] as $index => $value) { echo $k . '<br>'; echo $index . '<br>'; echo $value . '<br>'; } }
보시다시피 2차원을 설정했습니다. $a를 배열하고 인덱스를 설정합니다. 출력의 일부는 다음과 같습니다.
첫 번째 줄: $k가 첫 번째 배열의 "one"과 같은 2차원 배열의 인덱스에 해당함을 알 수 있습니다
두 번째 줄: $v는 2차원 배열에 해당합니다(Echo 출력을 직접 사용할 수 없기 때문에 여기서는 print_r을 사용합니다). 예를 들어 레이어의 첫 번째 데이터(1,2,3,4) 배열에서 foreach에 중첩된 루프에서 $a[$k]는 $v를 나타냅니다. 여기에 $a[$k]를 쓴 출력 결과는 $v를 쓴 것과 같습니다. 같은 의미이기 때문입니다
세 번째 줄: $k 은 여전히 2차원 배열의 인덱스입니다
네 번째 줄: $index는 0
에서 시작하여 암시적으로 정의된 2차원 배열 데이터의 인덱스입니다. 다섯 번째 줄: $value는 두 번째- 차원 배열
다음 단계는 반복 출력입니다.
foerach는 정말 강력한 함수임을 알 수 있습니다. 위의 경우는 두 번째 숫자 배열의 데이터 인덱스도 정의되어 있는 경우입니다. 사실 똑같습니다. foreach 문도 똑같습니다
$b=array ( '0' => Array ( 'jid' => 10,'j名' => 10,'jabstract' => 10,'jprovider' => 10,'jintroduction' => '厉害人物'), '1' => Array ( 'jid' => 8 ,'j名' => 8, 'jabstract' => 8, 'jprovider' => 8, 'jintroduction' => '厉害人物') );
foreach ($b as $k => $v) { echo $k.'<br>'; print_r($v); echo '<br>'; foreach ($b[$k] as $index => $value){ echo $index.'<br>'; echo $value.'<br>'; } }
출력도 위와 동일한 원리를 기반으로 합니다
utf-8 형식을 사용하도록 주의하세요. 그렇지 않으면 출력이 깨질 수 있습니다.
추천 튜토리얼: PHP 비디오 튜토리얼
위 내용은 PHP에서 2차원 배열을 순회하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!