다음 코드 조각을 고려하세요.
<code class="php">$description = 'Paper: ' . ($paperType == 'bond') ? 'Bond' : 'Other';</code>
예상할 수도 있습니다. $paperType이 'bond'인 경우 이 코드는 'Paper: Bond' 문자열을 $description에 할당하고 그렇지 않으면 'Paper: Other'를 할당합니다. 그러나 관찰된 동작은 다릅니다.
실행 시 $description은 'Bond' 또는 'Other'를 수신하고 'Paper:' 머리말을 생략합니다. 이 예상치 못한 결과는 잘못된 괄호 배치에서 비롯됩니다.
코드를 수정하려면 문자열이 올바른 순서로 연결되도록 괄호를 추가해야 합니다.
<code class="php">$description = 'Paper: ' . ($paperType == 'bond' ? 'Bond' : 'Other');</code>
삼항 표현식을 괄호로 묶어 'Bond' 또는 'Other'의 연결 결과에 'Paper:'를 첨부하여 연결 작업이 먼저 수행되도록 합니다.
위 내용은 삼항 연산자와 문자열 연결이 비정상적인 동작을 생성하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!