>  기사  >  백엔드 개발  >  error_reporting()은 PHP의 오류 보고 수준을 설정합니다.

error_reporting()은 PHP의 오류 보고 수준을 설정합니다.

WBOY
WBOY원래의
2016-08-04 09:21:121239검색

error_reporting(E_ALL ^ ​​​​E_NOTICE ^ E_STRICT ^ E_DEPRECATED);
형제 여러분, 이 코드 줄의 의미와 설정할 오류 수준을 설명해 주세요.

답글 내용:

error_reporting(E_ALL ^ ​​​​E_NOTICE ^ E_STRICT ^ E_DEPRECATED);
형제 여러분, 이 코드 줄의 의미와 설정할 오류 수준을 설명해 주세요.

공식 PHP 문서에서 확인할 수 있습니다: error_reporting
위 코드의 의미: E_NOTICE E_SCRICT E_DEPRECATED를 제외한 모든 오류가 보고됩니다.
E_ALL ^ ​​​​E_NOTICE ^ E_STRICT ^ E_DEPRECATED 연속 XOR 연산입니다.
E_ALL E_NOTICE E_STRICT E_DEPRECATED 이는 상수이며, 해당 이진수는 대략 다음과 같습니다

<code>E_NOTICE 00001 
E_STRICT 00010
E_DEPRECATED 00100
E_ALL 11111
</code>

XOR 연산을 수행한 후 같은 것은 0으로, 다른 것은 1로 바꾸는 것과 같습니다. 즉, E_ALL이 XOR 연산을 수행한 것을 제외한다는 결과가 나옵니다.
위 상수에 해당하는 값은 순전히 허구입니다. 인쇄하여 해당 값이 무엇인지 확인할 수 있습니다.
마찬가지로 E_NOTICE | E_STRICT와 같은 방법을 사용하여 보고를 위한 여러 수준을 설정할 수도 있습니다. or 연산 후 1이 있으면 1, 모두 0이면 0이 되는 것이 원칙입니다

즉, 모든 유형의 오류(E_ALL)를 출력하지만 E_NOTICE, E_STRICT 및 E_DEPRECATED는 제외됩니다.

E_ALL은 모두 1 숫자이고 E_NOTICE, E_STRICT 및 E_DEPRECATED는 모두 XOR되어 해당 항목을 제외하는 로그 수준을 형성하므로 여기서는 비트 연산 기술이 사용됩니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.