정확한 결과와 편차가 발생하는 경우를 오류라고 합니다. PHP에서는 잘못된 형식의 코딩이나 실행 불가능한 기능 구현으로 인해 오류가 발생할 수 있습니다. 근본 원인과 심각도에 따라 PHP 오류는 다음과 같은 4가지 유형으로 분류됩니다.
무료 소프트웨어 개발 과정 시작
웹 개발, 프로그래밍 언어, 소프트웨어 테스팅 등
PHP의 오류 유형에 대해 알아보겠습니다.
PHP에서는 실행 가능한 코드를 개발하기 위해 스크립팅이 표준 문법을 따라야 합니다. 작성된 코드 구문이 표준에서 벗어나면 구문 오류가 발생합니다. 구문 분석 오류라고도 합니다. 이 오류는 컴파일 단계 자체에서 확인되고 코드 실행이 중지됩니다. 오류가 수정되지 않고 구문 결함 없이 컴파일이 완료되지 않는 한 실행을 허용하지 않습니다. 컴파일 타임 구문 분석(구문) 오류를 나타내는 데 사용되는 오류 상수: E_PARSE
예:
아래 코드 조각은 PHP 변수에 값을 할당하고 출력 창에 저장 값을 표시하도록 개발되었습니다.
<?php $Correct_Var = "Writing a code to demonstrate Syntax(Parse Error)"; Incorrect_Var = "The '$' symbol is missing for variable y!!!"; echo $Correct_Var; echo Incorrect_Var; ?>
출력:
PHP 컴파일러는 문자열이 $ 기호와 연관될 때 모든 변수의 존재를 이해합니다. 위 코드에서는 Incorlect_Var 변수의 정의가 문법을 만족하지 않아 컴파일러에서 해당 코드에 대해 구문 오류가 발생하고 실행이 중단됩니다.
이 오류는 PHP 스크립트가 존재하지 않는 파일에 파일 작업을 수행하려고 시도하거나 입력 값의 개수(즉, 존재하는 인수 개수와 다른 개수)를 사용하여 함수를 호출하려고 시도하는 등 잘못된 정보를 처리하려고 할 때 발생합니다. 호출 함수 정의에서. 이는 심각한 오류이지만 프로그램 실행을 중단시키지 않고 예상치 못한 결과를 나타내는 것으로 끝납니다. 스크립트 실행을 종료하지 않고 런타임 경고를 나타내는 데 사용되는 오류 상수: E_WARNING
예:
아래 코드 조각은 현재 프로그래밍 내에서 다른 스크립트 파일을 호출하기 위해 작성되었습니다.
<?php echo "Beginning of program execution"; echo "<br>"; echo "<br>"; $Correct_Var = "Writing a code to demonstrate Warning Error"; echo $Correct_Var; echo "<br>"; echo "<br>"; include ("MissingScript.php"); //Calling the script file which is not available echo "Ending of program execution"; ?>
출력:
프로그래밍에 따르면 컴파일러가 성공적으로 코드로 컴파일되고 실행이 시작됩니다. 실행은 순차적으로 계속됩니다. include 명령(“MissingScript.php”)의 경우 기본 경로 …/usr/share/php에서 스크립트를 찾고 있지만 해당 이름을 가진 스크립트는 찾지 못했습니다. 따라서 해당 특정 명령에 대한 경고 메시지가 표시되고 나머지 코드는 설계된 대로 실행됩니다.
이 오류는 스크립트에 잘못된 코딩이 개발된 경우 PHP에서 발생합니다. 이는 실행을 중지하지 않고 오류 메시지로 끝나는 심각하지 않은 오류로 분류됩니다. 유효하지 않은 코드로 인해 발생하는 런타임 알림 메시지를 나타내는 데 사용되는 오류 상수: E_NOTICE
예:
<?php echo "Beginning of program execution"; echo "<br>"; echo "<br>"; $Correct_Var = "Writing a code to demonstrate Notice Error"; echo $InCorrect_Var; //Try to display value stored in an undefined variable echo "<br>"; echo "<br>"; echo "Ending of program execution"; ?>
출력:
$InCordirect_Var 변수는 코드에 정의되어 있지 않으므로 컴파일러는 변수를 인식하지 못합니다. 따라서 알림 오류가 발생합니다.
호출 함수에 대한 함수 정의 누락 등 잘못된 명령으로 인해 발생하는 컴파일 시간 오류를 치명적인 오류라고 합니다. 이러한 오류 유형의 심각도 수준은 매우 중요하므로 실행이 진행되지 않고 치명적인 오류 메시지가 출력됩니다. 스크립트 종료를 유발하는 치명적인 오류를 나타내는 데 사용되는 오류 상수: E_ERROR
예:
아래 코드 조각은 PHP 스크립팅에서 함수 적용 시연을 호출하도록 설계되었습니다.
<?php echo "Beginning of program execution"; echo "<br>"; echo "<br>"; $Correct_Var = "Writing a code to demonstrate Fatal Error"; echo $Correct_Var; echo "<br>"; echo "<br>"; UndefinedFunction();//Calling a function which is not defined in the script echo "Ending of program execution"; ?>
출력:
코드는 올바른 코딩 문법에 따라 개발되므로 컴파일 시 오류가 발생하지 않습니다. 실행 단계에서는 프로그램 범위에 정의되어 있지 않기 때문에 Undefunction() 함수를 호출하는 명령을 디코딩할 수 없습니다. 이로 인해 치명적인 오류 메시지가 발생하고 프로그램 실행이 중단됩니다.
1. Error handling is easy in PHP. If any developer does not have access to the complete code for any application, it is recommended to use error handling functions in possible scenarios.
2. In order to avoid new error in the PHP programming, developer is expected to follow proper coding guidelines and stays alert towards probabilities of various types of errors, warnings and notices.
3. It is recommended not to allow any error or warning or notice to be displayed to the user. Hence the best practice for any safe PHP programming to ensure the required configuration to be available in php.ini file.
The desired value for the below variables are:
error_reporting as ' E_ALL' display_errors as 'Off' log_errors as 'On'
The below code can be included in any PHP script to configure the desired values in the php.ini file:
error_reporting(E_ALL); ini_set('display_errors','0'); ini_set('log_errors','1');
4. PHP incorporates the feature to enable developer to write own customized error handling functions.
This function needs to be designed with some specific guidelines as follows:
Function should be capable of handling minimum of two input parameters: error message and error level and maximum of 5 input parameters by including the optional parameters such as line number, file and error context.
위 내용은 PHP의 오류 유형의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!