自定义错误处理程序奇怪的行为 - PHP

问题描述:

我有自定义错误处理程序怪异的问题,那就是:自定义错误处理程序奇怪的行为 - PHP

function errHandler($errno, $errstr, $errfile, $errline) 
{ 
    if($errno) 
    { 
     header('HTTP/1.1 503 Service Temporarily Unavailable'); 
     header('Status: 503 Service Temporarily Unavailable'); 
     header('Retry-After: 3600'); 

     exit; 
    } 

    return true; 
} 

运行时,每次:

set_error_handler('errHandler'); 

头正在尽管缺乏发送有什么错误?有任何想法吗?

尝试var_dump()$errno, $errstr, $errfile, $errline,看看是否能给出任何暗示。

+0

的事情是,没有任何东西被传递,但由于某种原因,标题正在运行 - 只有标题 - 退出之前,他们不会阻止它被发送 – Marcin 2011-03-17 19:51:10

+0

我不能重现我的系统(5.3.5/Linux)上的行为。它按预期工作。 – johnjohn 2011-03-17 20:18:44

+0

奇怪,请再次看看代码,然后,谢谢 – Marcin 2011-03-17 21:08:22

语法是 “503服务不可用”

http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html

+0

谢谢,但这不是一个问题,如果没有错误提供,不应该触发标题。 – Marcin 2011-03-17 19:51:56