PHP - For Loop

"for" Loop의 흐름도

syntaxis와 예제를 탐구하기 전에, "for" 루프가 어떻게 작동하는지 시각화해 보겠습니다. "for" 루프는 지시 사항을 통해 이동하는 컨베이어 벨트와 같습니다. 초기 조건에서 시작하여 종료 조건을 만족하는지 확인한 후 코드 블록 내부를 실행합니다. 코드 블록이 실행되면 카운터를 업데이트하고, 종료 조건이 더 이상 만족되지 않을 때까지 과정을 반복합니다.

PHP - For Loop

st=>start: Start
e=>end: End
op1=>operation: Initialize counter
cond=>condition: Check end condition
op2=>operation: Update counter
op3=>operation: Execute code block
cond2=>condition: Is end condition met?
op4=>operation: No, go back to op2
op5=>operation: Yes, go to end

st->op1->cond
cond(yes)->op3->op2->cond2
cond2(no)->op4->op2
cond2(yes)->op5->e

"for" Loop의 문법

PHP에서 "for" 루프의 기본 문법은 다음과 같습니다:

for (initialization; condition; increment/decrement) {
// 실행할 코드
}
  • 초기화: 여기서 카운터 변수를 초기화합니다.
  • 조건: 이 조건이 참이어야 루프가 계속 실행됩니다. 거짓이면 루프가 중지됩니다.
  • 증가/ 감소: 여기서 카운터를 업데이트합니다. 요구 사항에 따라 증가하거나 감소시킬 수 있습니다.

예제

간단한 예제로 "for" 루프를 사용하여 1에서 5까지의 숫자를 출력해 보겠습니다.

<?php
for ($i = 1; $i <= 5; $i++) {
echo $i . " ";
}
?>

이 예제에서는 $i를 1로 초기화하고, $i가 5 이하인지 확인한 후, 각 반복에서 $i를 1 증가시킵니다. echo 문은 $i의 값을 공백 뒤에 출력합니다.

무한 "for" Loop

루프를 작성할 때 주의해야 합니다. 무한 루프는 프로그램을 중지시키거나 응답하지 않게 만들 수 있습니다. 무한 루프의 예제를 보겠습니다:

<?php
for (;;) {
echo "This loop will run forever!";
}
?>

이 루프는 초기화, 조건, 증가/감소가 없기 때문에 무한히 계속 실행됩니다. 이를 중지시키려면 수동으로 실행을 중단해야 합니다. 예를 들어 터미널에서 Ctrl + C를 누릅니다.

감소하는 "for" Loop

감소하는 "for" 루프는 증가하는 루프와 유사하지만, 카운터를 감소시키는 대신 증가시킵니다. 5에서 1까지 감소하는 예제를 보겠습니다:

<?php
for ($i = 5; $i >= 1; $i--) {
echo $i . " ";
}
?>

"for...endfor" 구조 사용

PHP는 "for" 루프에 대한 줄임 표기법을 제공하는 foreach 구조를 제공합니다. 하지만 우리는 현재 전통적인 "for" 루프에 집중하기로 했습니다.

인덱스 배열을 "for" Loop로 반복

"for" 루프를 사용하여 인덱스 배열을 반복하여 각 요소의 인덱스를 접근할 수 있습니다. 예제를 보겠습니다:

<?php
$fruits = array("apple", "banana", "cherry");

for ($i = 0; $i < count($fruits); $i++) {
echo $fruits[$i] . " ";
}
?>

이 예제에서는 count() 함수를 사용하여 $fruits 배열의 요소 수를 확인하고, 그 요소를 인덱스를 사용하여 반복합니다.

협응 배열을 "for" Loop로 반복

협응 배열의 경우, "for" 루프를 사용하여 키와 값을 모두 반복할 수 있습니다. 예제를 보겠습니다:

<?php
$students = array(
"Alice" => 25,
"Bob" => 27,
"Charlie" => 22
);

foreach ($students as $name => $age) {
echo "$name is $age years old.<br>";
}
?>

이 예제에서는 foreach 구조를 사용하여 $students 협응 배열을 반복합니다. $name 변수는 키(학생 이름)를 저장하고, $age 변수는 값(학생 나이)을 저장합니다. 그런 다음 각 학생의 이름과 나이를 출력합니다.

중첩된 "for" Loop 사용

때로는 더 복잡한 작업을 수행하기 위해 중첩된 "for" 루프를 사용해야 할 수 있습니다. 중첩된 "for" 루프를 사용하여 곱셈표를 출력하는 예제를 보겠습니다:

<?php
for ($i = 1; $i <= 5; $i++) {
for ($j = 1; $j <= 5; $j++) {
echo $i * $j . "\t";
}
echo "<br>";
}
?>

이 예제에서는 외부 루프가 행(1에서 5)을 반복하고, 내부 루프가 열(도 1에서 5)을 반복합니다. 행과 열의 값을 곱하여 출력하여 곱셈표를 생성합니다.

PHP에서 "for" 루프에 대한 소개는 여기까지입니다! 연습이 완벽을 만듭니다. 다양한 시나리오를 시도하고 코드를 작성해 보세요. 행복한 코딩!

Credits: Image by storyset