0
안녕하세요 여러분, 아마 쉬운 질문입니다.PHP 사용자 정의 오류 처리기
getJson 호출에서 알림을보고하고 응답의 json 형식에 대한 규칙을 위반하지 않도록 사용자 지정 오류 처리기가 필요합니다.
그래서 내가 세션 변수의 모든 통지를 수집 생각하고 스위치가<?php
session_start();
function myErrorHandler($errno, $errstr, $errfile, $errline) {
if (!(error_reporting() & $errno)) {
// This error code is not included in error_reporting
return;
}
switch ($errno) {
case E_USER_ERROR:
$error= "<b>My ERROR</b> [$errno] $errstr<br />\n";
$error.= " Fatal error on line $errline in file $errfile";
$error.= ", PHP " . PHP_VERSION . " (" . PHP_OS . ")<br />\n";
$error.= "Aborting...<br />\n";
$_SESSION['Errors']['Errors'][]=$error;
//exit(1);
break;
case E_USER_WARNING:
$_SESSION['Errors']['Warning'][] = "<b>My WARNING</b> [$errno] $errstr<br />";
break;
case 8: // notice
if(isset($_REQUEST['ajax']) || isset($_REQUEST['ajaxAccess'])) {
$_SESSION['Errors']['Notice'][]="<b>My NOTICE</b> [$errno] $errstr $errfile $errline<br />";
//json_encode($_SESSION);
}
// else $error.= "<b>My NOTICE</b> [$errno] $errstr $errfile $errline<br />\n";
break;
default:
// $error.= "Unknown error type: [$errno] $errstr<br />\n";
break;
}
/* Don't execute PHP internal error handler */
return true;
}
$old_error_handler = set_error_handler("myErrorHandler");
문제의 $의 errno는 어떤 옵션을 캐치하지 않았던 내 오류 처리기에서 응답
의로 json_encode에 추가 숫자이며 임의의 옵션과 일치하지 않습니다
구성에서 문자열을 변경하여 작동하도록 설정해야합니까?
감사합니다.
감사합니다. 그것은 _USER로 그들은 나를에 의해 촉발되고 PHP 없이는 트리거되지 않는다는 것을 의미합니다. 나는 다시 노력한다.) – giuseppe