使用try catch

时间:2019-01-23 03:20:53

标签: php try-catch phpexcel

我怀疑PHP的try catch机制是为什么当我使用try catch处理错误时,为什么PHP仍显示默认错误消息

例如,我正在使用PHP excel lib来解析xls文件,但是我想打印用户友好的错误输出,例如

{code:1, msg:"some error"}

所以我做这些:

    try {
        return $this->getJSON($fileName);
    }catch (Exception $e){
        $f = fopen('/' . trim(ROOT_DIR, '/\\') . '/file/Excel_error', 'wb');
        fwrite($f, $e);
        $split_content = "\n\n-------------------------------------\n\n";
        fwrite($f, $split_content);
        fclose($f);
        echo json_encode(array(
            "code" => 10000,
            "msg" => "Excel parse error",
            "files"=>null
        ));
    }

我想记录错误文件并将我的自定义消息输出到前端,但是不起作用,当我触发错误/警告或其他警告时,PHP仍显示PHP Error / {{1 }} ...就像按照屏幕截图

enter image description here

PS:l处理E_WARINING中的文件,此功能是我的入口。

1 个答案:

答案 0 :(得分:0)

您可以在php.ini文件中更改错误处理和日志记录部分。您可以将error_reporting的值更改为E_ERROR,以减少报告的详细程度并避免显示警告。