개발하는 루루언니

php : 배열 반복문 for 과 foreach 사용 차이 본문

php

php : 배열 반복문 for 과 foreach 사용 차이

혜닝혜루 2023. 5. 31. 10:37
728x90
반응형
$arr = array(); // 배열의 생성 

$arr[2] = "apple";

$arr[3] = "banana";

$arr[4] = "orange";

// $arr[0]과 $arr[1]은 배열의 홀(hole)이 됨.

 

for ($i = 0; $i < count($arr); $i++) {

    echo "\\$arr[{$i}] : ".$arr[$i]."<br>";

}

 

foreach ($arr as $element){

    echo $element."<br>";

}

$arr 라는 배열을 생성 하였는데 [0]번째 [1]번 째는 값을 넣지 않았다.

[2]번부터 값이 들어가게 되는데 여기서 for문을 사용하게되면 모든 배열에 접근할 수 없게 된다.

count 함수는 배열의 요소의 개수를 계산할 때 배열의 빈값 (hole)을 포함하지 않는다.

 

따라서, 홀을 가지는 배열에서는 정확한 배열의 길이를 구할 수 없다.

하지만 foreach 문을 사용하면 예제와 같이 홀이 아닌 배열의 요소에만 정확히 접근할 수 있다.


★ 요약 

: 배열에 빈값이 있으면 for 값의 count 가 포함하지 않아 제대로된 값을 구하기 어렵다.

foreach문은 배열 요소에만 저확히 접근이 가능하다.

728x90