조건부 할당을 위한 PHP의 중첩 삼항 연산자
중첩 삼항 연산자를 사용하려고 했던 PHP 코드에서 문제가 발생했습니다. 그런데 예상치 못한 결과가 나오고 있습니다. 문제를 자세히 살펴보고 해결책을 제시해 보겠습니다.
제공한 코드:
$province = 7; $Myprovince = ( ($province == 6) ? "city-1" : ($province == 7) ? "city-2" : ($province == 8) ? "city-3" : ($province == 30) ? "city-4" : "out of borders" );
이 코드에서는 $province 값에 따라 다른 도시 이름을 할당하려고 합니다. 그러나 삼항 연산자가 제대로 중첩되지 않았기 때문에 모든 값에 대해 "city-4"가 표시됩니다.
중첩된 삼항 연산자를 올바르게 사용하려면 각 삼항 연산자를 괄호로 묶어야 합니다. 올바른 코드는 다음과 같습니다.
$province = 7; $Myprovince = (($province == 6) ? "city-1" : ((($province == 7) ? "city-2" : ((($province == 8) ? "city-3" : ((($province == 30) ? "city-4" : "out of borders"))))));
이런 방식으로 삼항 연산자를 중첩하면 코드가 올바른 순서로 조건을 평가하고 $province 값을 기준으로 적절한 도시 이름을 할당합니다.
위 내용은 PHP의 중첩된 삼항 연산자가 예기치 않은 결과를 반환하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!