PHP 7에 새로 추가된 NULL 병합 연산자(??)는 isset()에서 감지한 삼항 연산을 수행하는 지름길입니다.
NULL 병합 연산자는 변수가 존재하고 값이 NULL이 아닌지 확인합니다. 그렇다면 자체 값을 반환하고, 그렇지 않으면 두 번째 피연산자를 반환합니다.
삼항 연산자를 다음과 같이 작성했습니다:
$site = isset($_GET['site']) ? $_GET['site'] : 'php中文网';
이제 다음과 같이 직접 작성할 수 있습니다:
$site = $_GET['site'] ?? 'php中文网';
Example
<?php // 获取 $_GET['site'] 的值,如果不存在返回 'php中文网' $site = $_GET['site'] ?? 'php中文网'; print($site); echo "<br/>"; // PHP_EOL 为换行符 // 以上代码等价于 $site = isset($_GET['site']) ? $_GET['site'] : 'php中文网'; print($site); echo "<br/>"; // ?? 链 $site = $_GET['site'] ?? $_POST['site'] ?? 'php中文网'; print($site); ?>
위 프로그램 실행의 출력 결과는 다음과 같습니다.
php中文网 php中文网 php中文网