📚 PHP 초급 - 4주차 - 01 if, else if, else 문: 코드의 흐름을 제어하는 조건문

2025. 6. 27. 03:13프로그램/PHP 초급

📚 PHP 초급 - 4주차 - 01 if, else if, else 문: 코드의 흐름을 제어하는 조건문

📚 PHP 초급 - 4주차 - 01 if, else if, else 문: 코드의 흐름을 제어하는 조건문

프로그래밍은 단순히 순서대로 명령을 실행하는 것이 아닙니다. 때로는 특정 #조건 에 따라 다른 작업을 수행해야 할 때가 있습니다. 예를 들어, 사용자가 로그인했는지 여부에 따라 다른 메시지를 보여주거나, 특정 점수대에 따라 다른 등급을 부여하는 등의 상황이죠. 이때 사용하는 것이 바로 #조건문입니다. PHP에서 가장 기본적이고 핵심적인 #조건문 은 바로 if, else if, else 문입니다. 이번 포스팅에서는 이 세 가지 구문이 어떻게 코드의 #흐름 을 제어하는지 자세히 알아보겠습니다.


1. #if 문: 가장 기본적인 조건 처리

#if 문은 특정 #조건 이 #참 (true)일 때만 코드를 실행하도록 합니다. 가장 기본적인 #조건문 형태로, if 뒤의 괄호 안에 #조건식 을 작성합니다.

기본 형태:

PHP
 
if (조건식) {
    // 조건식이 참(true)일 때 실행될 코드
}

예시:

PHP
 
<?php
$age = 20;

if ($age >= 18) {
    echo "당신은 성인입니다.<br>";
}
// 출력: 당신은 성인입니다. (age가 18보다 크거나 같으므로)
?>

위 예시에서 $age >= 18이라는 #조건식 이 #참 이므로, echo "당신은 성인입니다.<br>"; 코드가 실행됩니다. 만약 $age가 17이었다면 #조건식 이 #거짓 이 되어 아무것도 출력되지 않을 것입니다.


2. #else 문: 조건이 거짓일 때 처리

#else 문은 if 문의 #조건식 이 #거짓 (false)일 때 실행될 코드를 정의합니다. if 문 단독으로 사용되거나 else if 문과 함께 사용될 수 있습니다.

기본 형태:

PHP
 

 

if (조건식) {
    // 조건식이 참(true)일 때 실행될 코드
} else {
    // 조건식이 거짓(false)일 때 실행될 코드
}

예시:

PHP
 
<?php
$score = 55;

if ($score >= 60) {
    echo "합격입니다!<br>";
} else {
    echo "불합격입니다. 다시 도전하세요.<br>";
}
// 출력: 불합격입니다. 다시 도전하세요. (score가 60보다 작으므로)
?>

위 예시에서 $score >= 60이라는 #조건식 이 #거짓 이므로, else 블록 안의 코드가 실행됩니다.


3. #else_if 문: 여러 개의 조건 처리

#else if (또는 elseif) 문은 첫 번째 if 문이 #거짓 이고, 그 다음으로 검사할 다른 #조건 이 있을 때 사용합니다. 여러 개의 조건을 순차적으로 검사하여 해당되는 하나의 블록만 실행되도록 합니다.

기본 형태:

PHP
 
if (조건식1) {
    // 조건식1이 참일 때 실행될 코드
} else if (조건식2) { // 또는 elseif (조건식2)
    // 조건식1이 거짓이고, 조건식2가 참일 때 실행될 코드
} else if (조건식3) {
    // 조건식1, 2가 거짓이고, 조건식3이 참일 때 실행될 코드
} else {
    // 위의 모든 조건식이 거짓일 때 실행될 코드
}

예시: 성적 등급 부여

PHP
 
<?php
$grade = 85;

if ($grade >= 90) {
    echo "A 등급입니다.<br>";
} else if ($grade >= 80) { // $grade가 90 미만이고 80 이상일 때
    echo "B 등급입니다.<br>";
} else if ($grade >= 70) { // $grade가 80 미만이고 70 이상일 때
    echo "C 등급입니다.<br>";
} else { // 위의 모든 조건에 해당하지 않을 때
    echo "F 등급입니다.<br>";
}
// 출력: B 등급입니다. (grade가 85이므로 두 번째 else if에 해당)
?>

이처럼 else if를 사용하여 여러 구간별 조건을 처리할 수 있습니다. PHP는 위에서부터 아래로 #조건식 을 순서대로 평가하며, 한 번이라도 #참 이 되는 #조건식 을 만나면 해당 블록의 코드를 실행하고 나머지 else if 또는 else 블록은 건너뛰고 #조건문 을 종료합니다.


4. #조건문 사용 시 주의사항 및 모범 사례

  • 들여쓰기: 코드의 가독성을 높이기 위해 #조건문 내부의 코드는 반드시 들여쓰기(indentation)를 하는 것이 좋습니다.
  • 중괄호 {}: 단일 라인만 실행하는 경우 중괄호를 생략할 수 있지만, 예측 불가능한 버그를 방지하고 일관성을 유지하기 위해 항상 중괄호를 사용하는 것이 권장됩니다.
  • PHP
     
    // 좋은 예
    if ($is_admin) {
        echo "관리자 페이지";
    }
    
    // 나쁜 예 (가능은 하지만 권장하지 않음)
    if ($is_admin)
        echo "관리자 페이지";
    
  • 논리적인 순서: else if 문을 사용할 때는 #조건식 의 순서가 중요합니다. 더 넓은 범위의 조건을 먼저 검사하면 의도하지 않은 결과가 나올 수 있습니다. 예를 들어, $grade >= 70을 $grade >= 90보다 먼저 검사하면 90점 이상인 학생도 70점대 등급으로 잘못 처리될 수 있습니다.
  • elseif와 else if: PHP에서는 elseif와 else if 둘 다 사용할 수 있으며, 기능적으로는 동일합니다. 하지만 elseif는 단일 키워드이므로 미세한 #성능 차이가 있을 수 있지만 일반적으로는 무시할 만합니다. 중요한 것은 프로젝트 내에서 일관된 스타일을 사용하는 것입니다.
  • 삼항 연산자와의 비교: 아주 간단하게 두 가지 값 중 하나를 선택하는 경우에는 #삼항_연산자 (? :)를 사용하는 것이 #코드 를 더 간결하게 만들 수 있습니다. 그러나 코드가 복잡해지면 if-else 문이 #가독성 측면에서 더 유리합니다.

결론

if, else if, else 문은 PHP에서 프로그램의 #흐름 을 제어하는 가장 기본적이고 강력한 도구입니다. 이들을 통해 다양한 #조건 에 따라 코드를 분기하여 복잡한 로직을 구현할 수 있습니다. 각 문의 역할을 정확히 이해하고, 들여쓰기, 중괄호 사용, 논리적인 #조건 순서와 같은 #모범_사례 를 따르면서 코드를 작성하는 연습을 꾸준히 한다면, 더욱 효율적이고 유지보수하기 쉬운 PHP 애플리케이션을 만들 수 있을 것입니다.