PHP 7-기대
Expectations이전 assert () 함수에 대한 하위 호환성 향상입니다. 기대는 프로덕션 코드에서 비용이 0 인 어설 션을 허용하고 어설 션이 실패 할 때 사용자 지정 예외를 throw하는 기능을 제공합니다. assert ()는 이제 테스트 할 문자열 또는 부울과 비교하여 첫 번째 매개 변수가 표현식 인 언어 구조입니다.
assert ()에 대한 구성 지시문
지령 | 기본값 | 가능한 값 |
---|---|---|
zend.assertions | 1 | 1 − 코드 생성 및 실행 (개발 모드) 0 − 코드를 생성하지만 런타임시 점프 -1 − 코드 생성 금지 (생산 모드) |
assert.exception | 0 | 1 − 어설 션이 실패하면 예외로 제공된 객체를 던지거나 새로운 AssertionError 예외가 제공되지 않은 경우 개체입니다. 0 − 위에서 설명한대로 Throwable을 사용하거나 생성하지만, Throwable을 던지는 대신 해당 객체를 기반으로 경고 만 생성합니다 (PHP 5 동작과 호환). |
매개 변수
assertion− 주장. PHP 5에서는 평가할 문자열이거나 테스트 할 부울이어야합니다. PHP 7에서 이것은 실행될 값을 반환하는 표현식 일 수도 있으며 그 결과는 어설 션의 성공 여부를 나타내는 데 사용됩니다.
description − 주장이 실패 할 경우 실패 메시지에 포함될 선택적 설명.
exception − PHP 7에서 두 번째 매개 변수는 Throwable 설명 문자열 대신 객체입니다.이 경우 어설 션이 실패하고 assert.exception 구성 지시문이 활성화되었습니다.
반환 값
FALSE 주장이 거짓이면 TRUE 그렇지 않으면.
예
<?php
ini_set('assert.exception', 1);
class CustomError extends AssertionError {}
assert(false, new CustomError('Custom Error Message!'));
?>
다음 브라우저 출력을 생성합니다.
Fatal error: Uncaught CustomError: Custom Error Message! in...