3

我正在使用 PHP set_error_handler(brodeur),以便我可以自定义错误处理的行为。

现在我发现自己想要自定义输出的显示位置/定位。目前,正如预期的那样,错误显示在标记内有问题的 PHP 代码所在的位置。

我希望输出显示在页面的最底部或最顶部,这样它就不会干扰页面内容的 CSS/布局。

我的问题是我首先在我的代码中声明了brodeur函数,然后定义了set_error_handler(brodeur)代码,然后是<HTML>...</HTML>内容。

如果我在页面底部(或顶部)创建了一个 DIV 包装器,那么将这些错误字符串放置在该 DIV 中的最佳方法是什么,当 PHP 代码不会位于该 DIV 中时?或者有什么我错过的选择吗?

4

1 回答 1

3

有多种方法可以解决这个问题。理想情况下,您已经将视图/模板与实际代码分开。如果是这样,您可以将错误设置为数组并将其传递到模板中,然后将其放在您想要的任何位置。

但是,如果您不使用该方法进行处理,则希望使用 php 的 try 和 catch 功能来处理错误:

$errors = array();
try {
 // do all your code here
}
catch(Exception $e)
{
  // do whatever you want with the error
  // my example is pushing it into an errors array..
  array_push($errors,$e->getMessage());
}
// now do whatever you want with $errors when you're ready..
于 2013-02-22T22:56:06.187 回答