在PHP中使未定义的变量成为错误

时间:2013-05-14 07:37:52

标签: php

我有以下代码段:

<?php
ini_set('display_errors', '1');
error_reporting(E_ALL | E_NOTICE);
print $bla;
print 7;
?>

打印出bla未定义的警告,但之后继续。我希望php在遇到未定义的变量时抛出错误并停止代码执行。怎么做?

以上只是一个例子。我想在一千多块的clode文件中处理每个未定义的变量。

3 个答案:

答案 0 :(得分:5)

您可以编写自己的错误处理程序。当你遇到这种类型的通知时,让它停止执行。看看

http://php.net/manual/en/function.set-error-handler.php

一个简单的小例子:

function new_error_handler($errno, $errstr, $errfile, $errline) {
    switch ($errno) {
      case E_NOTICE:
        if (strstr($errstr, 'Undefined variable')) {
          die('Undefined variable found');
        }
      break;
    }
}

set_error_handler('new_error_handler');

echo $foo;

答案 1 :(得分:2)

使用set_error_handler实现错误处理程序并在其中放置die

答案 2 :(得分:-1)

if(!isset($bla)){
   throw new Exception('bla variable is not defined');
}