3. PHP 제어문(if else/switch)에 대해 알아보겠습니다.
PHP는 다양한 조건문을 통해 프로그램 흐름을 제어할 수 있습니다. 가장 일반적으로 사용되는 조건문은 if-else와 switch입니다. 각각의 조건문은 특정 상황에서 더욱 유용하며, 목적에 따라 선택하여 코드를 작성합니다.
if else
기본 문법
if (조건식) {
// 조건이 참인 경우 실행되는 코드
} else {
// 조건이 거짓인 경우 실행되는 코드
}
조건식에는 다양한 연산자를 이용하여 참인 경우를 만들 수 있습니다.
비교 연산자
연산자 | 설명 |
== | 같다 |
!= | 같지 않다 |
> | 크다 |
< | 작다 |
>= | 크거나 같다 |
<= | 작거나 같다 |
&& | 논리곱 |
|| | 논리합 |
! | 논리부정 |
? : | 삼항 연산자 |
?? | 널 병합 연산자 |
예제1) 나이
인터넷 쇼핑몰 서비스를 기획하고 있다면, 회원 가입 과정에서 나이 정보를 수집해야 할 필요가 있습니다. 이때, 만 19세 미만인 경우에는 가입이 불가능하도록 처리해야 합니다. 이를 if-else 문으로 구현해보겠습니다.
if ($age < 19) {
echo “죄송합니다, 만 19세 미만은 가입하실 수 없습니다.”;
} else {
// 회원 가입 처리 로직
echo “회원 가입이 완료되었습니다.”;
}
예제2) 학점
또한, else-if 문을 사용하여 여러 개의 조건을 처리할 수 있습니다. 성적에 따라 학점을 부여하는 코드를 구현해보겠습니다.
if ($score >= 90) {
echo “A학점”;
} else if ($score >= 80) {
echo “B학점”;
} else if ($score >= 70) {
echo “C학점”;
} else if ($score >= 60) {
echo “D학점”;
} else {
echo “F학점”;
}
$score가 90 이상이면 “A학점”을 출력되고 80 이상이면 “B학점”을 출력합니다.
만약 $score가 70 이상이면 “C학점”을 출력되고 $score가 60 이상이면 “D학점”을 출력합니다. 그 외의 경우에는 “F학점”을 출력합니다.
Switch
기본 문법
switch (변수) {
case 값1:
// 변수가 값1과 같은 경우 실행할 코드
break;
case 값2:
// 변수가 값2와 같은 경우 실행할 코드
break;
…
default:
// 변수가 모든 값과 다른 경우 실행할 코드
}
예제)
간단한 전자상거래 웹사이트를 만들고 사용자의 거주 국가에 따라 메시지를 표시하려고 합니다. 이를 위해 switch 문을 사용해 보겠습니다.
$country = ‘US’;
switch ($country) {
case ‘US’:
echo ’50달러 이상 주문 시 무료 배송!’;
break;
case ‘Canada’:
echo ‘100달러 이상 주문 시 무료 배송!’;
break;
case ‘UK’:
echo ’50파운드 이상 주문 시 무료 배송!’;
break;
default:
echo ‘죄송합니다. 귀하의 국가에는 무료 배송이 제공되지 않습니다.’;
}
위의 예제에서 switch 문은 $country 변수의 값 정보에 따리 아래 case 코드 블록이 실행됩니다. $country의 값이 ‘US’이므로 첫 번째 코드 블록이 실행되어 “50달러 이상 주문 시 무료 배송!”이라는 메시지가 표시됩니다.
switch 알기
- switch 문은 여러 조건을 간결하고 효율적으로 처리하는 데 유용한 기초 문법.
- 대개 단일 값을 여러 상수 값과 비교하는 데 사용되며. 논리 연산자와 관련된 복잡한 조건을 처리할 수 없습니다. 이러한 경우에는 ‘if-else’ 문을 사용하는 것이 더 적절할 수 있습니다.
- 각 조건 시 마다 `break` 문 사용. 사용하지 않는 다면 다음 후속 조건이 모두 실행됨. 이를 방지하기 위해서는 각각의 사례마다 `break` 문을 사용하는 것을 권장.
switch 문은 일반적으로 간단한 값 대 값 비교를 수행할 때 더 읽기 쉽습니다. 유연성과 복잡한 조건이 필요한 경우 if를 사용하고, 여러 상수 값과 비교할 단일 값이 있고 보다 간결하고 구조화된 접근 방식을 원하는 경우 switch를 사용합니다. 제어문 코드를 작성 할 때 가독성과 동작 기능을 고려해야합니다.
[PHP] 1. 웹 프로그래밍 배우기
1. AWS 가입 후 EC2 무료 사용 Nginx 웹 서버 설치하기
2. AWS EC2 서버 PHP8.2 & Mariadb 설치 방법