>  기사  >  백엔드 개발  >  PHP 오류 모드를 설정하는 방법

PHP 오류 모드를 설정하는 방법

王林
王林원래의
2019-09-04 17:58:001877검색

PHP 오류 모드를 설정하는 방법

PHP가 실행 중일 때 심각도가 다른 오류에 대해 다른 프롬프트가 표시됩니다.

예: $a를 선언하지 않은 경우에는 직접 추가하며, 추가 시 값은 0으로 계산됩니다. 단, NOTICE, 즉 표준화를 위해 주의를 요합니다. 프로그램의 오류 수준을 더 높은 NOTICE 수준으로 조정하면 해당 내용도 보고되므로 오류 및 코드 사양을 빠르게 찾을 수 있습니다. 그러나 제품 출시 및 웹 사이트 운영 후에는 오류가 발생합니다.

1: 이런 종류의 오류는 고객에게 나쁜 인상을 줍니다.

2: 오류를 보고할 때 D:www1015와 같은 웹사이트의 절대 경로를 보고하면 공격을 받을 위험이 높아집니다.

따라서 웹사이트가 온라인 상태가 된 후에는 오류 수준을 낮추어야 합니다. 오류를 적게 보고하거나 아예 보고하지 않는 것도 좋습니다.

오류 수준 수정:

1: php.ini에서 error_reporting 옵션 수정

2: error_reporting() 함수를 사용하여 PHP 페이지의 오류 수준을 수정할 수 있습니다. 이진 값으로 표시됩니다: 왼쪽에서 오른쪽으로 1111 1111 1111 111, 각 비트의 1은 오류 수준을 나타냅니다.
치명 error 치명적인 오류: 0000 0000 0000 001 켜기 1 warning 경고 오류: 0000 0000 0000 010 열기 2

NOTICE 경고: 0000 0000 0001 000 열기 8

eg:

fatal error 致命错误: 0000 0000 0000 001 开启 1 
warning 警告错误 : 0000 0000 0000 010 开启 2 
NOTICE 警告 : 0000 0000 0001 000 开启 8

eg:

都报出来: error_reporting(11)
不要报NOTICE: error_reporting(3)
任何错误都不报: error_reporting(0);

系统为我们把各个级别的值,用系统常量代替了.

E_ERROR
E_WARNING
E_NOTICE 8

报所有错误: error_reporting(E_ALL);

除了NOTICE,其他都报: error_reporting(E_ALL & ~E_NOTICE)모두 보고됨: error_reporting(11 );

보고하지 않음 주의사항: error_reporting(3)

오류를 보고하지 않음: error_reporting (0);

시스템은 우리를 위해 각 레벨을 나눕니다. 값은 시스템 상수로 대체됩니다.

E_ERROR 1 E_WARNING 2 E_NOTICE 8

모든 오류 보고: error_reporting (E_ALL);🎜🎜NOTICE를 제외하고 다른 모든 오류는 보고됩니다: error_reporting(E_ALL & ~E_NOTICE); 🎜🎜개발 중에는 오류 보고 수준이 더 높으며, 온라인 제품에서는 오류 보고 수준이 더 높습니다. 낮추려면:🎜🎜코드는 다음과 같습니다.🎜
define('DEBUG',true); // 在开发时,声明一个DEBUG模式 
if(defined('DEBUG')) { //检测到处于开发模式 
  error_reporting(E_ALL); 
} else { 
  error_reporting(0); 
}
🎜더 많은 관련 질문은 PHP 중국어 웹사이트를 방문하세요:🎜 PHP 비디오 튜토리얼🎜🎜🎜

위 내용은 PHP 오류 모드를 설정하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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