自定义PHP错误处理,不显示PHP错误


Custom PHP error handling without showing PHP errors as well

我有一些代码可以在运行多个函数时处理错误。其中之一是CCD_ 1。我正在做这样的事情:

$input_xml = simplexml_load_file($input_file);
if(!$input_xml)
{
    fwrite($STDERR, $errors["XML_ERR"]);
    exit(1);
}

但是,当变量$input_file为空时,我的终端会显示多个警告,最后,它会显示我的自定义错误消息。有没有其他(更好的)方法来处理这些类型的错误,这样我只得到一条消息(我的自定义消息)?

您可以关闭警告,但它们存在是有原因的。确保您的变量已初始化,因为未初始化的变量往往会使程序不具有确定性。

在你的情况下,类似的东西

if (isset($input_file) && $input_file != "") {
   // put your simplexml_load_file here...
} 

或者更好的方法,比如检查$input_file是否真的是一个可以访问的文件。