我有一个只能通过 ajax 访问的 php 文件。ajax 调用只需要格式化为json_encode
d 输出的数据。我正在尝试制作一个自定义错误处理程序函数来捕获 php 错误,而不是直接输出它们,而是将它们传递给它们为 json 解析器编码的数组。
到目前为止我有
// error handler function
function handleErrors($errno, $errstr, $errfile, $errline)
{
if (!(error_reporting() & $errno)) {
// This error code is not included in error_reporting
return;
}
$response['php_error'][] = "Error [$errno] - $errstr on line $errline in file $errfile";
/* Don't execute PHP internal error handler */
return true;
}
set_error_handler("handleErrors");
//do other stuff that might trigger php errors
if ($result===true){
$response['success'] = true;
}else{
$response['success'] = false;
$response['error'] = $result;
$response['request'] = json_encode($_REQUEST);
}
echo json_encode($response);
我的问题是该$response
数组超出了文档其余部分的访问范围,因此它将在 json 对象中输出。是否有某种方法可以通过引用将变量传递给自定义函数或我忽略的另一种方法?