PHP 삼항 연산자 및 if에 대한 자세한 설명
3항 연산자 구문: 조건 ? 결과 1 : 결과 2 참고: 물음표 앞의 위치는 판정 조건입니다. 조건을 만족하면 1, 만족하지 않으면 2가 됩니다.
추천 매뉴얼: php 자습 매뉴얼
이 글은 삼항 연산자와 if...else...를 자세히 비교하고 설명하고 있어 모든 분들께 도움이 되기를 바랍니다.
오늘 온라인에서 논문을 수정하다가 이해할 수 없는 문장을 발견했습니다.
$if_summary = $row['IF_SUMMARY']==2?'是':'否';
나중에 바이두에서 PHP의 삼항 연산자라는 것을 알게 되었습니다
이 문장은 다음과 같은 의미입니다.
if($row['IF_SUMMARY']==2){ $if_summary="是"; }else{ $if_summary="否"; }
삼항 연산자 함수는 "if...else" 프로세스 문과 일치하며 한 줄로 작성되었으며 코드가 매우 간결하고 실행 효율성이 더 높습니다.
PHP 프로그램에서 삼항 연산자를 적절하게 사용하면 스크립트를 더욱 간결하고 효율적으로 만들 수 있습니다.
코드 형식은 다음과 같습니다.
(expr1) ? (expr2) : (expr3);
설명:
조건 "expr1"이 true이면 "expr2" 문을 실행하고, 그렇지 않으면 "expr3"을 실행합니다.
동일한 기능을 얻으려면 조건부 처리문을 사용하는 경우 여러 줄의 코드를 작성해야 합니다.
if(expr1) { expr2; } else { expr3; }
위에서 언급한 삼항 연산자의 장점은 과장이 아니라고 볼 수 있습니다. 그러나 대부분의 경우 삼항 연산자는 코드가 비교적 간단한 경우, 즉 실행문이 단 한 문장인 경우에만 사용됩니다.
예:
$a>$b ? print "a大于b" : print "a小于b";
실제로 삼항 연산자는 설정된 조건이 true인지 아닌지 확장될 수 있습니다. 다음 형식을 사용해 보세요.
(expr1) ? (expr2).(expr3) : (expr4).(expr5);
우리는 이를 명확하게 볼 수 있습니다. 다중 실행 명령문은 문자열 연산자(".")를 사용하여 연결될 수 있으며, 각 실행 명령문은 작은 꺾쇠괄호로 묶여 독립적이고 완전한 실행 명령문임을 나타냅니다.
이 확장 이후 해당 기능은 "if...else" 프로세스 문에 더 가까워졌습니다.
동시에 삼항 연산자를 중첩하여 사용할 수도 있습니다.
예를 들어, a가 b보다 큰 경우: a가 c보다 작으면 x=c-a, 그렇지 않으면 x=a-c입니다.
그렇지 않고 a가 b보다 작을 경우: b가 c보다 작으면 x=c-b입니다. x=b-c:
$a>$b ? $x=($a<$c ? $c-$a : $a-$c) : $x=($b<$c ? $c-$b : $b-$c);
중첩된 삼항 연산자의 가독성이 그다지 좋지 않으며, 향후 코드 유지에 문제가 있을 수 있습니다. 그러나 "if...else"와 같은 프로세스 문과 비교하면 다음과 같습니다. 위의 상황은 정말 너무 간결합니다. 그것이 매력입니다.
게으른 코드 단순성을 추구하는 사람들에게는 삼항 연산자를 사용하여 if 프로세스 문을 대체하는 것이 탁월한 선택이 될 것입니다. "삼항"에서 조건문 이외의 "요소"를 고려할 필요가 없더라도 삼항 연산자를 사용하는 것이 if 문보다 여전히 더 간결합니다.
다음 문의 구문은 정확합니다. 작은 따옴표를 사용하여 두 번째 또는 세 번째 "요소"를 생략합니다.
$a>$b ? print "Yes" : ""; $a>$b ? '': print 'No';
다음 사항에 유의해야 합니다.
삼항 연산자를 사용할 때는 다음을 사용하는 것이 좋습니다. print 문은 echo 문을 대체합니다.
다음 일련의 문을 이해하는 데 주의하세요.
$str = $_GET['abc'] ? 'wangjinbo' : 'wjb';
이것은 다음과 같이 이해될 수 없습니다.
$str이 $_GET['abc']와 같을 때 할당된 값은 'wangjinbo'이고 그렇지 않으면 할당된 값입니다.
왜냐면 하나: 동등성을 판단하려면 ==를 사용해야 합니다.
이유 2: 삼항 연산자의 구문은 위에 표시된 것과 같습니다: (expr1) ? (expr2) : (expr3). 위의 이진, 삼항 '왕진보' 또는 'wjb'
의 올바른 이해는 다음과 같습니다.
$_GET['abc']는 null 값입니다(즉, (false인지 여부) ), ' ', null, 0, undifine in PHP, 둘 다 부울 값 false와 동일합니다. 이때 $str에는 'wjb' 값이 할당되고, 그렇지 않으면 'wangjinbo' 값이 할당됩니다.
참고:
IF 문 조건에 조건이 없으면 내용 자체 $_GET['abc']가 true이고, 조건이 성립하면 str에 '왕진보' 값이 할당되고, 그렇지 않으면 'wjb' 값이 할당됩니다. ; true에 대한 명확한 값이 없는 경우 true는 값이 있음을 의미하고 false는 값이 없음을 의미합니다.
추천 관련 기사:
1.PHP 삼항 연산자: 빠를까 말까?
2.PHP의 삼항 연산자와 Null 병합 연산자의 간단한 비교
3.php의 일반적인 연산자는 무엇입니까
관련 영상 추천:
1.Dugu Jiujian (4)_PHP 영상 튜토리얼
위 내용은 PHP 삼항 연산자 및 if에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











이번 장에서는 CakePHP의 환경 변수, 일반 구성, 데이터베이스 구성, 이메일 구성에 대해 알아봅니다.

PHP 8.4는 상당한 양의 기능 중단 및 제거를 통해 몇 가지 새로운 기능, 보안 개선 및 성능 개선을 제공합니다. 이 가이드에서는 Ubuntu, Debian 또는 해당 파생 제품에서 PHP 8.4를 설치하거나 PHP 8.4로 업그레이드하는 방법을 설명합니다.

CakePHP는 PHP용 오픈 소스 프레임워크입니다. 이는 애플리케이션을 훨씬 쉽게 개발, 배포 및 유지 관리할 수 있도록 하기 위한 것입니다. CakePHP는 강력하고 이해하기 쉬운 MVC와 유사한 아키텍처를 기반으로 합니다. 모델, 뷰 및 컨트롤러 gu

CakePHP에서 데이터베이스 작업은 매우 쉽습니다. 이번 장에서는 CRUD(생성, 읽기, 업데이트, 삭제) 작업을 이해하겠습니다.
