遇到语法错误时收到错误消息?

时间:2012-12-15 02:44:01

标签: php

我有一个类,注释行失败(显然是因为$之前我不需要displayname),但我最终不得不放一堆echo由于没有抛出错误,所以语句可以解决这个问题。

我希望有办法。

class RegisterModel {
    var $displayname;
    ...
    function RegisterModel() {
        try {
            if (empty($_POST) === false) {
                // THIS LINE IS FAILING ... BUT I'M NOT GETTING AN ERROR
                // I KNOW WHY IT'S FAILING ... BUT I WANT AN ERROR TO THROW
                $this->$displayname = $_POST['displayname'];
                ...
            }
        }
        catch (Exception $e) {
            echo $e->getMessage();
        }
    }
}

如果错误被抛入catch,我只是没有正确使用它?是否需要设置一些全局设置以便抛出错误?

2 个答案:

答案 0 :(得分:1)

set_error_handler(function($errno ,$errstr,$errfile,$errline,$errcontext){
   if($errno & error_reporting()) throw new Exception($errstr,$errno);
});

请注意,您希望将error_reporting设置为所需级别。

答案 1 :(得分:0)

您可以尝试添加:

    error_reporting(E_ALL);
ini_set('display_errors', 1);

如果显示错误,则可能存在运行时配置错误。如果不可能,您可以相应地调整配置。您可以查看定义的各种与错误相关的变量here