기본 문법
if (조건) {
// 조건이 참일 때 실행되는 코드
}
$age = 20;
if ($age >= 18) {
echo "성인입니다.";
}
조건이 참일 때와 거짓일 때 실행할 코드를 나눌 수 있습니다.
if (조건) {
// 조건이 참일 때
} else {
// 조건이 거짓일 때
}
$is_logged_in = false;
if ($is_logged_in) {
echo "환영합니다.";
} else {
echo "로그인 해주세요.";
}
여러 조건을 차례로 검사할 때 사용합니다.
if (조건1) {
// 조건1이 참일 때
} elseif (조건2) {
// 조건1은 거짓이고 조건2가 참일 때
} else {
// 모든 조건이 거짓일 때
}
$score = 85;
if ($score >= 90) {
echo "A";
} elseif ($score >= 80) {
echo "B";
} elseif ($score >= 70) {
echo "C";
} else {
echo "F";
}
조건문 안에 조건문을 작성할 수 있습니다.
$age = 20;
$is_student = true;
if ($age >= 18) {
if ($is_student) {
echo "성인 학생입니다.";
} else {
echo "성인입니다.";
}
}
간단한 조건을 한 줄로 표현할 수 있습니다.
$result = (조건) ? 참일 때 값 : 거짓일 때 값;
$age = 17;
$status = ($age >= 18) ? "성인" : "미성년자";
echo $status;
여러 값 중 하나를 선택하는 경우 if보다 간결하게 쓸 수 있습니다.
switch (변수) {
case 값1:
// 값1일 때 실행
break;
case 값2:
// 값2일 때 실행
break;
default:
// 어떤 값과도 일치하지 않을 때
}
$day = "금요일";
switch ($day) {
case "월요일":
echo "한 주의 시작입니다.";
break;
case "금요일":
echo "주말이 다가옵니다.";
break;
default:
echo "평범한 날입니다.";
}
break는 조건이 일치한 후 다른 case 문으로 흐름이 넘어가지 않게 합니다.
default는 어느 case에도 해당하지 않을 때 실행됩니다.
비교 연산자와 할당 연산자를 혼동하지 않도록 주의해야 합니다.
if ($a = 10) // 의도는 비교지만 실제로는 할당입니다. 버그 발생 가능
if ($a == 10) // 정확한 비교
자료형까지 비교하려면 === 또는 !==을 사용합니다.
if ($a === "10") // 값과 타입 모두 비교
조건문 형태 |
설명 |
---|---|
if |
기본 조건 판단 |
if + else |
조건이 거짓일 때 다른 코드 실행 |
elseif |
여러 조건 중 하나 선택 |
switch |
정해진 여러 값 중 분기 |
삼항 연산자 |
간단한 조건을 한 줄로 표현 |