PHP는 배우기 쉽고 유연성이 뛰어나 널리 사용되는 서버 측 스크립팅 언어입니다. 그러나 모든 프로그래밍 언어와 마찬가지로 PHP에도 구문 오류 및 논리 오류와 같은 단점과 오류가 있습니다. 개발 및 디버깅 프로세스 중에는 이러한 오류 메시지를 적시에 얻고 해결하는 것이 중요합니다. 이 기사에서는 PHP에서 오류 정보를 얻는 방법을 소개합니다.
1. PHP 오류 메시지 켜기
PHP에서는 기본적으로 오류 메시지가 출력되지 않습니다. 오류 메시지 출력을 활성화하려면 php.ini 파일을 구성해야 합니다. php.ini 파일을 열고 다음 두 가지 주요 줄을 찾을 수 있습니다.
display_errors = Off error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
display_errors = Off
를 display_errors = On
으로 변경한 다음 error_reporting 행이 다음으로 변경되었습니다. <code>display_errors = Off
改为display_errors = On
,然后将error_reporting
行更改为:
error_reporting = E_ALL
这将启用所有错误报告,包括所有错误级别。在开启错误信息后,PHP脚本中的每个错误都将在网页上输出,包括警告、提示信息以及致命错误。
二、获取最近的PHP错误信息
在PHP脚本中,可以使用PHP自带的error_get_last()
函数来获取最近发生的错误信息。该函数返回的是一个数组,包含错误的信息类型、消息和文件路径等。
下面是一个例子:
<?php echo $test; print_r(error_get_last()); ?>
在上面的代码中,$test
变量没有被定义,因此,这将导致一个致命错误。这个错误信息将作为最后一个错误被存储,然后通过error_get_last()
函数进行检索,输出结果如下所示:
Array ( [type] => 8 [message] => Undefined variable: test [file] => /var/www/html/test.php [line] => 2 )
三、注册错误处理程序
除了使用error_get_last()
函数之外,还可以通过注册错误处理程序来获取错误信息。PHP提供了一个set_error_handler()
函数,用于自定义PHP发生错误时的行为。该函数需要接收一个函数名称作为其参数,该函数可以被用来处理捕捉到的错误。
下面是一个例子:
<?php function error_handler($errno, $errstr, $errfile, $errline) { echo "Error: [$errno] $errstr - $errfile:$errline"; } set_error_handler("error_handler"); echo $test; ?>
在上面的代码中,我们定义了一个名为error_handler()
的函数来处理错误。然后将该函数名称传递给set_error_handler()
函数进行注册。当变量$test
Error: [8] Undefined variable: test - /var/www/html/test.php:7
error_get_last()
함수를 사용하여 최신 오류 메시지를 가져올 수 있습니다. 이 함수는 오류 정보 유형, 메시지, 파일 경로 등이 포함된 배열을 반환합니다. 🎜🎜예는 다음과 같습니다. 🎜rrreee🎜위 코드에서는 $test
변수가 정의되어 있지 않으므로 치명적인 오류가 발생합니다. 이 오류 메시지는 마지막 오류로 저장되었다가 error_get_last()
함수를 통해 검색됩니다. 출력 결과는 다음과 같습니다. 🎜rrreee🎜 3. 오류 핸들러를 등록합니다. 🎜🎜 를 사용하는 것 외에도 >error_get_last ()
함수를 사용하면 오류 핸들러를 등록하여 오류 정보를 얻을 수도 있습니다. PHP는 오류 발생 시 PHP 동작을 사용자 정의하기 위한 set_error_handler()
함수를 제공합니다. 이 함수는 발견된 오류를 처리하는 데 사용할 수 있는 함수 이름을 매개변수로 받아야 합니다. 🎜🎜예는 다음과 같습니다. 🎜rrreee🎜위 코드에서는 오류를 처리하기 위해 error_handler()
라는 함수를 정의합니다. 그런 다음 등록을 위해 함수 이름을 set_error_handler()
함수에 전달합니다. $test
변수가 정의되지 않은 경우 치명적인 오류가 발생합니다. 오류 처리기는 오류를 포착하고 다음 결과를 출력합니다. 🎜rrreee🎜 4. 결론 🎜🎜PHP 스크립트를 개발하는 과정에서는 적시에 오류 정보를 얻고 처리하는 것이 중요합니다. PHP 오류 메시지 켜기부터 최신 PHP 오류 메시지 가져오기, 등록된 오류 처리기 사용에 이르기까지 다양한 방법을 사용하면 PHP 개발 시 오류를 더 잘 처리하고 디버깅하는 데 도움이 될 수 있습니다. 🎜위 내용은 PHP에서 오류 메시지를 얻는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!