PHP의 Nullsafe 연산자 소개
nullsafe 연산자(?->)를 사용하면 개발자는 객체 속성에 안전하게 액세스하고 명시적인 null 검사가 필요 없는 메서드입니다. 이는 특히 복잡한 객체 계층 구조에서 코드를 단순화하고 가독성을 향상시킵니다.
쿼리
nullsafe 연산자를 사용하여 다음 명령문을 다시 작성할 수 있습니까?
echo $data->getMyObject() != null ? $data->getMyObject()->getName() : '';
답변
From PHP 8부터는 null 병합 연산자(?)와 함께 nullsafe 연산자를 활용하여 원하는 동작을 달성할 수 있습니다.
해결책
echo $data->getMyObject()?->getName() ?? '';
? -> 연산자는 null 값이 발견되면 연산자 체인을 끊고 효과적으로 null을 반환하고 표현식을 종료합니다. 객체 속성을 검사하거나 메서드를 호출하는 연산자는
또한 체인의 후속 연산자가 체인의 일부로 간주되지 않는 경우(예: 아래 예의 연결 연산자) 단락되지 않습니다.
$string = $data?->getObject()->getName() . " after";
이 경우 $data가 null이면 코드 결과는 다음과 같습니다.
$string = null . " after";
위 내용은 PHP의 Nullsafe 연산자가 중첩 속성 액세스를 단순화할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!