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

PHP에서 숫자 비교하기: else-if·else vs 삼항 연산자(?)

PHP에서 조건에 따라 값을 처리할 때는 if-else 문삼항 연산자(?) 어느 쪽이든 사용할 수 있습니다. 다만 보다 간결하고 전문적인 코드를 작성하고 싶다면 삼항 연산자를 활용하는 것이 좋습니다. 참고로 두 방식의 실행 성능은 동일하므로, 코드 가독성과 상황에 맞춰 선택하면 됩니다.


예를 들어 다음과 같이 두 개의 변수가 있다고 가정해 보겠습니다.

$value1=10;
$value2=0;

이 두 변수의 값을 비교해야 할 때는 아래 예제처럼 삼항 연산자를 중첩하여 사용할 수 있습니다.

예제

<!DOCTYPE html>
<html>
<body>
<?php
$value1=10;
$value2=0;
$data=550000;
$output=$value1 ? $value2 : $value2 ? : $data;
echo "The value is=",$output;
?>
</body>
</html>

위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

출력 결과

The value is=550000

결과 해설

$value1이 10으로 참(truthy)이므로 첫 번째 조건식은 $value2(0)를 반환합니다. 하지만 0은 거짓(falsy)에 해당하기 때문에, 단축 삼항 연산자(?:)가 이를 대체하여 $data 값인 550000을 최종적으로 반환하게 됩니다. 이처럼 삼항 연산자를 적절히 조합하면 if-else 문보다 훨씬 짧은 코드로 동일한 로직을 구현할 수 있습니다.