>백엔드 개발 >PHP 문제 >PHP에서 오류를 디버깅하는 방법

PHP에서 오류를 디버깅하는 방법

藏色散人
藏色散人원래의
2020-10-15 11:26:542087검색

PHP에서 오류를 디버깅하는 방법: 먼저 오류 보고서를 시작한 다음 print 문을 사용하여 프로그램을 디버깅합니다. 마지막으로 접두사 문자 "@"를 사용하여 PHP 스크립트 오류 프롬프트를 보호합니다.

PHP에서 오류를 디버깅하는 방법

권장: "PHP 비디오 튜토리얼"

php 오류 디버깅

1. PHP 오류 수준

일반적으로 PHP 오류에는 알림, 경고, 오류의 세 가지 수준이 있습니다.

1. 주의사항: 스크립트 실행 시 공지사항 오류가 발생할 수도 있고, 정상 동작 중에도 발생할 수 있습니다. 실제로 이는 코드의 결함일 수 있습니다. PHP의 해석이 코드의 원래 의미와 다를 수 있기 때문입니다.

2. 경고: 코드가 실행될 때 발생하는 치명적이지 않은 오류입니다. 이는 치명적인 오류가 아니며 스크립트 실행을 중지하지 않습니다.

3. 오류: 치명적인 오류가 발생하여 스크립트 실행이 중지되었음을 나타냅니다. 이 오류는 PHP 작업의 모든 단계에서 발생할 수 있습니다. 초기화, 구문 분석 및 실행 코드 단계가 포함됩니다.

2. 오류 보고를 시작합니다

1. php.ini

display_errors=On
error_reporting = E_ALL & ~E_NOTICE

2. Apache 서버를 다시 시작합니다

3. 코드를 디버깅합니다

<form name="form1" method="post" action="">
  <input name="txt_key" type="text" id="txt_key">
  <input type="submit" name="Submit" value="搜索">
</form>
<?php
if($_POST[Submit]=="搜索"){
$key=$_POST[txt_key];//获取文本框的值
print $key;
}
?>

2.

4. PHP 스크립트 오류 프롬프트를 차단하려면 @를 사용하세요. Code

<?php
$file="book.php";//定义操作文件 
@fread($file) or die("文件读取失败!"); 
fclose($file); 
echo "我不能被输出了!程序运行后,前缀字符@后面的命令不被显示!";
?>

2. 실행 결과

파일 읽기에 실패했습니다!

5 오류 처리기를 사용하여 로그를 기록합니다

1. php.ini를 구성한 다음 Apache 서버를 다시 시작합니다

error_log = D:\AppServ\php5\php_errors.log

2. Code

<?php
function err_log($error,$error_str){//自定义一个错误处理函数
$file="php_error.log";
if(filesize($file)>1024){//如果日志文件大于1024KB
rename($file,$file.(string)time());//以时间为准绳对日志文件进行重命名
clearstatcache();//清除文件状态缓存
}
error_log($error_str,0,$file);//将出错信息记录到管理员所指定的路径
}
set_error_handler(&#39;err_log&#39;);//执行自定义函数log_roller()函数
trigger_error(time().":程序报错.\n");//发出错误信息
restore_error_handler();//重新编译这个预错处理的函数
?>

3.php_errors.log 파일을 엽니다

[ 2017년 4월 9일 13:46:52 Asia/Hong_Kong] 1491716812: 프로그램 오류입니다.

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

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