PHP 5.3의 ?: 연산자
PHP 5.3에서는 이전에 사용 가능했던 조건 연산자의 축약형인 ?: 연산자를 도입했습니다. . 원래 조건 연산자는 다음 형식을 취했습니다.
expr ? val_if_true : val_if_false
PHP 5.3에서는 중간 부분을 생략하여 ?: 구문으로 이어질 수 있습니다. 이는 다음과 같습니다:
expr ? expr : val_if_false
예를 들어 다음 코드는 $c 변수가 호출 가능한지 확인합니다. 그렇지 않은 경우 예외가 발생합니다:
require __DIR__.'/c.php'; if (!is_callable($c = @$_GET['c'] ?: function() { echo 'Woah!'; })) throw new Exception('Error'); $c();
PHP 5.3의 익명 함수
?: 연산자와 함께 PHP 5.3에서는 익명 함수도 도입했습니다. 질문과는 달리 익명 함수는 한동안 존재하지 않았습니다. 이는 PHP 5.3의 새로운 기능이었습니다. 익명 함수는 이름 없이 생성되며 일반적으로 콜백이나 다른 함수에 대한 인수로 사용됩니다.
위 예에서 익명 함수는 $c 변수에 할당됩니다. 매개변수가 없으며 "Woah!"를 인쇄합니다. 전화했을 때. 이 익명 함수는 $c 변수의 기본값으로 사용되며, 함수를 실행하기 전에 호출 가능한지 확인합니다.
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3