PHP:在主体内部显示用户自定义错误

发布于 2024-08-20 06:43:48 字数 347 浏览 6 评论 0原文

我想在我正在构建的一些界面的许多地方抛出自定义错误。只需在我的函数内使用 echo 即可将回显代码放置在我的页面标签上方。因此,我构建了一个自定义函数来处理错误并提供回溯,但它再次打印在我的页面上方。

这是我正在使用的功能:

function error($msg) {
    trigger_error($msg, E_USER_WARNING);
    echo '<pre>';
    debug_print_backtrace();
    echo '</pre>';
}

如何将错误打印在页面的标签内?

或者,有更好的方法来做到这一点吗?

I am wanting to throw custom errors in many places in some interfaces that I am building. Just using an echo inside my function places that echoed code above the tag in my page. So, I built a custom function to handle errors and give me a backtrace, but again, it prints above the in my page.

Here is the function I am using:

function error($msg) {
    trigger_error($msg, E_USER_WARNING);
    echo '<pre>';
    debug_print_backtrace();
    echo '</pre>';
}

How can I get my errors to print inside the tags of my page?

Or, is there a better method to do this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

放低过去 2024-08-27 06:43:48

如何延迟打印错误?理想情况下,我希望这里有一个错误,如果出现错误,它总是会被放入正文中

我不确定我是否完全遵循你正在做的事情,但也许就是这样?

<?php
class ErrorHandler
{
  static private $errors = null;

  static function report( ... /* see set_error_handler() for params */ )
  {       
    self::$errors .= "...";
    return true;
  }

  static function getErrors()
  {
     return self::$errors;
  }
}

set_error_handler(array('ErrorHandler', 'report'));

// ...

echo "<div>".ErrorHandler::getErrors()."</div>
?>

How would I delay printing errors? Ideally, I would love to have a Errors here that would always be put in the body if there is an error

I'm not sure if I completely follow what you are doing, but maybe this is it?

<?php
class ErrorHandler
{
  static private $errors = null;

  static function report( ... /* see set_error_handler() for params */ )
  {       
    self::$errors .= "...";
    return true;
  }

  static function getErrors()
  {
     return self::$errors;
  }
}

set_error_handler(array('ErrorHandler', 'report'));

// ...

echo "<div>".ErrorHandler::getErrors()."</div>
?>
千柳 2024-08-27 06:43:48

如果您的服务器运行 php5,则应使用异常处理程序
这正是您所需要的,一旦您了解了它的工作原理,它们就会非常有用。

这是一个关于如何使用它们的很好的教程;)

If your server runs php5, you shall use the exceptions handler.
It's exactly what you need and once you get how it works, they're really useful.

Here's a nice tutorial on how to use them ;)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文