PHP

19. PHP FOR반복문

drizzle0925 2021. 3. 4. 22:41
728x90

for 문

for 문은 while 문과는 달리 자체적으로 초기식, 표현식, 증감식을 모두 포함하고 있는 반복문이다.

따라서 while 문 보다는 좀 더 간결하게 반복문을 표현할 수 있다.

 

for 문을 플로우차트로 표현하면 다음과 같다.

 

for 문의 문법은 다음과 같다.

1
2
3
for (초기식; 조건식; 증감식) {
    조건식의 결과가 참인 동안 반복적으로 실행하고자 하는 명령문;
}
cs

 

1
2
3
4
5
<?php
for ($i = 1$i < 6$i++) {
    echo "{$i}<br>";
}
?>
cs

 

 

for 문을 구성하는 초기식, 표현식, 증감식은 각각 생략될 수 있다.

1
2
3
4
5
6
<?php
$cnt = 0;
for (; $cnt < 6$cnt++) {
    echo "{$cnt}<br>";
}
?>
cs

 

1
2
3
4
5
6
7
<?php
$cnt = 1;
for (;;$cnt++) {
    echo "{$cnt}<br>";
    if($cnt == 5break;
}
?>
cs

 

1
2
3
4
5
6
7
8
<?php
$cnt = 1;
for (;;) {
    echo "{$cnt}<br>";
    $cnt++;
    if($cnt == 5break;
}
?>
cs

 

 

또한 , 쉼표 연산자(,)를 사용하면 여러 개의 초기식이나 증감식을 동시에 사용할 수도 있다.

 

1
2
3
4
5
<?php
for ($i=1$cnt=1$i<6$i++) {
    echo "{$i}<br>";
}
?>
cs

for 문에서 실행될 명령문이 한 줄 뿐이라면 중괄호({})를 생략할 수 있다.

 

1
2
3
4
<?php
for ($i=1$i<6$i++)
    echo "{$i}<br>";
?>
cs


foreach 문

foreach 문은 일반적인 for 문과는 전혀 다른 형태의 반복문이다.

foreach 문은 배열의 모든 요소를 손쉽게 꺼내도록 도와준다.

 

이 반복문은 루프마다 배열의 각 요소를 지정된 변수에 대입한다.

이렇게 대입된 변수를 이용하면 루프 안에서 배열의 각 요소에 순차적으로 접근이 가능하다.

따라서 foreach 문은 정확히 배열의 길이만큼 반복된다.

 

foreach 문의 문법은 다음과 같다.

1
2
3
foreach (배열 as 값을저장할변수) {
    실행하고자 하는 명령문;
}
cs

 

 

1
2
3
4
5
6
7
8
<?php
$cupRamens = array("너구리""스낵면""컵누들""왕뚜껑");
 
foreach($cupRamens as $cupRamen){
    echo "이 컵라면은 {$cupRamen}입니다.<br>";
}
unset($cupRamen);
?>
cs

위의 예제에서 $cupRamen은 foreach 문 내에서만 사용하는 변수이다.

따라서 foreach 문이 끝난 뒤에는 unset() 함수를 사용하여 해제해 주는것이 좋다.

 

 

다음 예제는 배열의 값(value)뿐만 아니라 키(key)값도 변수에 넣어서 활용하는 예제이다.

 

 

1
2
3
4
5
6
7
8
9
10
11
12
<?php
$iceCream = array(
    "메로나" => 1400,
    "월드콘" => 2000,
    "돼지바" => 800,
    "빠삐코" => 1600,
);
foreach ($iceCream as $key => $value) {
    echo "{$key}의 가격은 {$value}원입니다.<br>";
}
unset($value);
?>
cs

 

foreach 문에서도 실행될 명령문이 한 줄 뿐이라면 중괄호({})를 생략할 수 있다.
1
2
3
4
5
6
7
8
9
10
11
12
<?php
$iceCream = array(
    "메로나" => 1400,
    "월드콘" => 2000,
    "돼지바" => 800,
    "빠삐코" => 1600,
);
foreach ($iceCream as $key => $value
    echo "{$key}의 가격은 {$value}원입니다.<br>";
 
unset($value);
?>
cs
728x90

'PHP' 카테고리의 다른 글

21. PHP 배열  (0) 2021.03.06
20. PHP 기타 제어문  (0) 2021.03.04
18. PHP WHILE반복문  (0) 2021.03.04
17. PHP SWITCH조건문  (0) 2021.03.04
16. PHP IF조건문  (0) 2021.03.03