php에서 파일에 오류 로그를 작성하는 방법: 1. 구성 파일 php.ini에서 "error_log" 항목을 검색하고 로그 파일의 경로를 구성합니다. 2. error_log() 함수를 사용하여 작성합니다. 구성된 로그에 오류 로그를 기록합니다. 파일에서 구문은 "error_log(기록할 오류 정보, 0);"입니다.
이 튜토리얼의 운영 환경: Windows 7 시스템, PHP 버전 7.1, DELL G3 컴퓨터
자신이 지정한 파일을 사용하여 오류 로그를 기록하려면 이 파일이 외부에 저장되어 있는지 확인하세요. 공격당할 가능성을 줄이기 위해 문서 루트 디렉터리를 삭제합니다. 그리고 파일은 PHP 스크립트 쓰기 권한을 부여해야 합니다. Linux 운영 체제에서는 /usr/local/ 디렉터리의 error.log 파일이 오류 로그 파일로 사용되고 웹 서버 프로세스 사용자에게 쓰기 권한이 설정되어 있다고 가정합니다. 그런 다음 PHP 구성 파일에서 error_log 지시문의 값을 오류 로그 파일의 절대 경로로 설정합니다.
php.ini의 구성 지침을 다음과 같이 수정해야 합니다.
error_reporting = E_ALL // 将会向PHP报告发生的每个错误 display_errors = Off // 不显示满足上条 指令所定义规则的所有错误报告 log_errors = On // 决定日志语句记录的位置 log_errors_max_len = 1024 // 设置每个日志项的最大长度 error_log = E:/php_log/php_error.log // 指定产生的错误报告写入的日志文件位置
PHP 구성 파일을 위와 같이 설정한 후 웹 서버를 다시 시작합니다. 이런 방식으로 PHP 스크립트 파일을 실행할 때 생성된 모든 오류 보고서는 브라우저에 표시되지 않지만 사용자가 지정한 오류 로그 E:/php_log/php_error.log에 기록됩니다.
또한 error_reporting에 정의된 규칙을 충족하는 모든 오류를 기록할 수 있을 뿐만 아니라 PHP의 error_log() 함수를 사용하여 오류 정보를 웹 서버의 오류 로그나 파일로 보낼 수도 있습니다.
error_log() 함수의 프로토타입은 다음과 같습니다.
error_log ( string $message [, int $message_type = 0 [, string $destination [, string $extra_headers ]]] ) : bool
매개변수 설명은 다음과 같습니다.
【예제】Mysql 데이터베이스에 로그인하는 것을 예로 들어 로그인 실패 시 오류 메시지를 기록합니다.
<?php $link = mysqli_connect("127.0.0.1", "my_user", "my_password", "my_db"); if (!$link) { error_log('Mysql 数据库连接失败!',0); exit(); } ?>
위 코드를 실행하면 php.ini 구성 파일의 error_log 항목에 설정된 디렉터리에 해당 오류 로그 파일이 생성됩니다. 파일 내용은 다음과 같습니다.
[08-May-2020 13:17:31 PRC] PHP Warning: mysqli_connect(): (HY000/1045): Access denied for user 'my_user'@'localhost' (using password: YES) in D:\WWW\index.php on line 2 [08-May-2020 13:17:31 PRC] Mysql 数据库连接失败!
추천 학습: "PHP 비디오 튜토리얼"
위 내용은 PHP에서 파일에 오류 로그를 작성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!