조건문이란?
- 조건의 참과 거짓에 따라 실행하는 문장을 다르게 할 때 사용하는 문장
- PHP에서 사용하는 조건문에는 if문과 switch문이 있다.
if 구문
- if문의 조건식이 참이면 if 다음 문장을 실행
if (조건식)
{
문장1;
문장2;
…
}
<?php
echo "if 구문을 실습해보자!!<br>";
$age = 30;
if ($age >= 20)
{
echo "\$age = $age <br>";
echo "\$age가 20보다 크기에 술을 마셔도 됩니다.";
}
?>

<?php
echo "if 구문을 실습해보자!!<br>";
$age = 10;
if ($age >= 20)
{
echo "\$age = $age <br>";
echo "\$age가 20보다 크기에 술을 마셔도 됩니다.";
}
?>

if - else 구문
- if문의 조건식이 참이면 if 다음 문장을 실행하고, 거짓이면 else 다음 문장을 실행
( else의 조건식이 if 조건식의 여집합이라고 생각하면 좋을 것 같다. )
if (조건식)
{
문장1;
문장2;
…
}
else
{
문장a;
문장b;
…
}
<?php
echo "if-else 구문을 실습해보자!!<br>";
$age = 10;
if ($age >= 20)
{
echo "\$age = $age <br>";
echo "\$age가 20보다 크기에 술을 마셔도 됩니다.";
}
else
{
echo "\$age = $age <br>";
echo "\$age가 20보다 작기에 술을 마시면 안됩니다.";
}
?>

if - elseif - else 구문
- if문의 조건식이 참이면 if 다음 문장을 실행하고 if문을 빠져나가지만 if문의 조건식이 거짓이면 elseif의 조건식을 확인한다. 이때, elseif의 조건식이 참이면 elseif 다음 문장을 실행하고, 거짓이면 그 다음 elseif 조건식으로 넘어간다. 그러다 elseif의 조건식이 모두 거짓이면 마지막 else 다음 문장을 실행한다.
if (조건식)
{
문장1;
문장2;
…
}
else if (조건식)
{
문장a;
문장b;
…
}
else if (조건식)
{
문장A;
문장B;
…
}
else
{
문장ㄱ;
문장ㄴ;
…
}
<?php
echo "if-else 구문을 실습해보자!!<br>";
$score = 70;
if ($score >= 90)
{
$grade = "A";
echo "\$score = $score <br>";
echo "\$grade는 \"$grade\"입니다.";
}
elseif ($score >= 80)
{
$grade = "B";
echo "\$score = $score <br>";
echo "\$grade는 \"$grade\"입니다.";
}
elseif ($score >= 70)
{
$grade = "C";
echo "\$score = $score <br>";
echo "\$grade는 \"$grade\"입니다.";
}
elseif ($score >= 60)
{
$grade = "D";
echo "\$score = $score <br>";
echo "\$grade는 \"$grade\"입니다.";
}
elseif ($score >= 50)
{
$grade = "E";
echo "\$score = $score <br>";
echo "\$grade는 \"$grade\"입니다.";
}
else
{
$grade = "F";
echo "\$score = $score <br>";
echo "\$grade는 \"$grade\"입니다.";
}
?>


if문의 중첩
- if문 안에 if문이 필요할 때 사용
if (조건식)
{
문장;
}
elseif (조건식)
{
if (조건식)
{
문장;
}
else
{
문장;
}
}
else
{
문장;
}
<?php
echo "if문의 중첩 구문을 실습해보자!!<br>";
$a = 10;
$b = 40;
$c = 60;
if ($a > $b)
{
if($a > $c)
{
echo "가장 큰 수는 \$a입니다. : $a";
}
else
{
echo "가장 큰 수는 \$c입니다. : $c";
}
}
else
{
if($b > $c)
{
echo "가장 큰 수는 \$b입니다. : $b";
}
else
{
echo "가장 큰 수는 \$c입니다. : $c";
}
}
?>

switch 문
- 변수의 값이 case에 있는 조건식 중 참인 곳에 있는 문장을 실행한다. case에 참인 곳이 없으면 default 뒤의 문장을 실행한다.
switch (변수)
{
case 값1 :
문장1;
문장2;
…
break;
case 값2 :
문장a;
문장b;
…
break;
case 값3 :
문장A;
문장B;
…
break;
default :
문장ㄱ;
문장ㄴ;
…
break;
}
<?php
echo "switch 구문을 실습해보자!!<br>";
$score = 70;
switch ($score)
{
case 90 :
$grade = "A";
echo "\$score = $score <br>";
echo "\$grade는 \"$grade\"입니다.";
break;
case 80 :
$grade = "B";
echo "\$score = $score <br>";
echo "\$grade는 \"$grade\"입니다.";
break;
case 70 :
$grade = "C";
echo "\$score = $score <br>";
echo "\$grade는 \"$grade\"입니다.";
break;
case 60 :
$grade = "D";
echo "\$score = $score <br>";
echo "\$grade는 \"$grade\"입니다.";
break;
case 50 :
$grade = "E";
echo "\$score = $score <br>";
echo "\$grade는 \"$grade\"입니다.";
break;
default :
$grade = "E";
echo "\$score = $score <br>";
echo "\$grade는 \"$grade\"입니다.";
break;
}
?>

[ 연습 문제 ]
- 1번
<?php
echo "연습 문제 1번<br><br>";
echo "시간당 급여<br>";
echo "- 주간 근무 : 9,500원<br>";
echo "- 야간 근무 : 주간 시급 * 1.5<br><br>";
$hour_rate = 9500;
$day_night = "주간";
$work_time = 8;
if ($day_night == "주간")
{
$pay = $hour_rate * $work_time;
}
else
{
$pay = $hour_rate * $work_time * 1.5;시간 * 1.5;
}
echo "$work_time 시간 동안 일한 $day_night 급여는 $pay 원입니다.";
?>

- 2번
<?php
echo "연습 문제 2번<br><br>";
$month = 12;
if($month >= 3 && $month <= 5)
{
$season = '봄';
echo "{$month}월은 {$season}입니다.";
}
elseif($month >=6 && $month <= 8)
{
$season = '여름';
echo "{$month}월은 {$season}입니다.";
}
elseif($month >=9 && $month <= 11)
{
$season = '가을';
echo "{$month}월은 {$season}입니다.";
}
elseif($month == 12 || $month == 1 || $month == 2)
{
$season = '겨울';
echo "{$month}월은 {$season}입니다.";
}
else
{
echo "잘못 입력되었습니다!";
}
?>

- 3번
<?php
echo "연습 문제 3번<br><br>";
$score = 90;
echo "시험 점수 : {$score}점<br>";
if($score >= 90 && $score <= 100)
{
echo "등급 : 수";
}
else if($score >= 80 && $score <= 89)
{
echo "등급 : 우";
}
else if($score >= 70 && $score <= 79)
{
echo "등급 : 미";
}
else if($score >= 60 && $score <= 69)
{
echo "등급 : 양";
}
else if($score >= 0 && $score <= 59)
{
echo "등급 : 가";
}
else
{
echo "점수를 잘못 입력하셨습니다!";
}
?>

- 4번
<?php
echo "연습 문제 4번<br><br>";
$buy = 80000;
if($buy >= 10000 && $buy < 50000)
{
$rate = 5.0;
}
elseif($buy >= 50000 && $buy < 300000)
{
$rate = 7.5;
}
elseif($buy >= 300000)
{
$rate = 10.0;
}
else
{
$rate = 0;
}
$discount = $buy * $rate / 100;
$pay = $buy - $discount;
echo "구매액 : {$buy}원<br>";
echo "할인율 : {$rate}%<br>";
echo "할인금액 : {$discount}원<br>";
echo "지불액 : {$pay}원";
?>

- 5번
<?php
echo "연습 문제 5번<br><br>";
$price = 30000;
$service = "매우 만족";
echo "서비스 만족도 : $service<br>";
if($service == "매우 만족")
{
$tip = $price * 0.2;
}
elseif ($service == "만족")
{
$tip = $price * 0.1;
}
else
{
$tip = $price * 0.05;
}
echo "팁 : {$tip}원";
?>

'스터디 > 코딩' 카테고리의 다른 글
| [ 자율 스터디 ] PHP 함수 (0) | 2023.01.04 |
|---|---|
| [ 자율 스터디 ] PHP 배열 (0) | 2023.01.04 |
| [ 자율 스터디 ] PHP 반복문 (0) | 2023.01.03 |
| [ 자율 스터디 ] PHP 기초 문법 (0) | 2023.01.02 |
| [ 자율 스터디 ] PHP의 기본 지식 (0) | 2023.01.02 |