PHP始终运行功能

时间:2009-10-16 17:43:16

标签: php json

我正在尝试以JSON格式返回一些错误。所以,我做了一个班级var:

public $errors = Array();

因此,在脚本中降低,不同的函数可能会返回错误,并将其错误添加到$ errors数组中。但是,我必须使用回归;在某些地方发生错误后停止脚本。

所以,当我这样做时,我怎么还能运行我的最后一个错误函数来返回所有收集到的错误?如何解决必须停止脚本的问题,但仍然希望返回错误以解释为什么我需要停止脚本?!

5 个答案:

答案 0 :(得分:1)

真的裸骨骨架:

$errors = array();

function add_error($message, $die = false) {
  global $errors;
  $errors[] = $message;
  if ($die) {
    die(implode("\n", $errors));
  }
}

答案 1 :(得分:0)

答案 2 :(得分:0)

  1. 将错误添加到当前$_SESSION
  2. 将最新错误添加到任何类型的cacheXML或某些存储空间
  3. 如果代码“停止”:

      

    //代码发生错误

         

    die(print_r($errors));

答案 3 :(得分:0)

如果您使用的是PHP5 +,那么您的课程可以使用析构函数方法:

public function __destruct() {
    die(var_dump($this->errors));
}

答案 4 :(得分:0)

您可以使用涉及 do {} 的技巧。

do {
    if(something) {
        // add error
    }
    if(something_else) {
        // add error
        break;
    }
    if(something) {
        // add error
    }
}while(0);

// check/print errors

注意中断,您可以随时使用它来突破执行范围,之后您将返回逻辑的最终错误。 或者您可以在函数内部 do {} 内部使用返回而不是 break ,这会更好。或者是,甚至更好,一个带有析构函数的类。