Computer >> 컴퓨터 >  >> 프로그래밍 >> PHP

PHP에서 && 연산자로 두 조건이 모두 참일 때만 코드 실행하는 방법

PHP에서는 &&(AND) 연산자를 if 문과 함께 사용하여 두 조건이 모두 참인지 확인할 수 있습니다. 두 조건이 모두 참으로 평가될 때만 코드 블록이 실행되고, 하나라도 거짓이면 해당 블록은 완전히 건너뛰어집니다.

참고로 PHP에는 &&와 유사한 역할을 하는 "and" 키워드도 존재하지만, 연산자 우선순위가 낮아 복잡한 표현식에서 의도와 다르게 동작할 수 있습니다. 따라서 가독성과 일관성을 위해 && 사용을 권장합니다.

기본 문법

if (condition1 && condition2) {
 echo "Both conditions are true!";
}

condition1과 condition2가 모두 참일 때만 코드 블록이 실행됩니다. 어느 하나라도 거짓이면 블록 전체가 건너뛰어집니다.

예제 1: 기본 AND 논리

&& 연산자가 참/거짓 조합에 따라 어떻게 동작하는지 살펴보겠습니다.

<?php
if (true && true) {
 echo "true<br>";
} else {
 echo "false<br>";
}
if (true && false) {
 echo "true<br>";
} else {
 echo "false<br>";
}
if (false && true) {
 echo "true<br>";
} else {
 echo "false<br>";
}
if (false && false) {
 echo "true<br>";
} else {
 echo "false<br>";
}
?>
true
false
false
false

두 조건이 모두 참일 때만 "true"가 출력되고, 그 외의 모든 경우에는 "false"가 출력됩니다.

예제 2: 사용자 로그인 검증

실무에서 자주 쓰이는 아이디와 비밀번호 검증 예제입니다.

<?php
$username = "admin";
$password = "12345";
if ($username == "admin" && $password == "12345") {
 echo "Login successful!";
} else {
 echo "Invalid username or password.";
}
?>
Login successful!

$username == "admin"$password == "12345" 두 조건이 모두 참이므로 로그인에 성공합니다.

예제 3: 괄호를 활용한 복합 조건

AND와 OR 연산자를 함께 사용할 때는 괄호로 조건을 묶어 우선순위 문제를 방지하는 것이 좋습니다.

<?php
$age = 20;
$country = "USA";
if ($age >= 18 && ($country == "USA" || $country == "Canada")) {
 echo "You are eligible to vote.";
} else {
 echo "You are not eligible to vote.";
}
?>
You are eligible to vote.

첫 번째 조건($age >= 18)이 참이고, 두 번째 조건($country == "USA" || $country == "Canada")도 참이므로 전체 조건이 충족됩니다.

핵심 정리

연산자우선순위권장 사항
&&높음가독성을 위해 권장
and낮음복잡한 표현식에서는 사용 지양

결론

PHP의 if 문에서 여러 조건을 동시에 확인하려면 && 연산자를 사용하세요. 특히 AND와 OR 연산자를 함께 조합할 때는 반드시 괄호를 사용해 평가 순서를 명확히 해야 예상치 못한 동작을 방지할 수 있습니다.