gpt4 book ai didi

php - PHP如何在脚本关闭时使用对象析构函数中的trigger_error触发用户错误?

转载 作者:行者123 更新时间:2023-12-03 08:36:04 25 4
gpt4 key购买 nike

在实现某些类时,我遇到了一个小问题:

如果脚本结束并且由于脚本完成而调用了destructors,则我想偶尔触发一个错误。

我以为 trigger_error() 函数会有用。但是,如果error_reporting(-1)不再将触发的错误发送到STDOUT或STDERR-可以这样做(例如,如果不在脚本的__destructor/termination阶段内,则trigger_error会按预期工作)。

如果我回显某些消息,它将被发送到STDOUT(CLI模式)。

我现在想知道

  • 在应用程序的此阶段如何触发错误?
  • 和/或替代地,我如何检测到由于脚本已成功结束而当前正在关闭的脚本?

  • 注意:我测试了 connection_status() ,但是对我来说是没有用的,因为它只与连接处理有关,而与连接无关。我想知道是否有一些功能对脚本执行状态(启动,运行,退出)相同。

    简化示例代码

    这是一些简化后的示例代码来说明此问题。自然只有在对对象有意义时才触发错误:
    <?php
    class TriggerTest
    {
    public function __destruct()
    {
    trigger_error('You should have missed something.');
    }
    }
    $obj = new TriggerTest;
    exit();

    问题是, trigger_error()被执行了,但是错误没有出现在任何地方。

    最佳答案

    如果您强制将错误报告设置为特定设置,触发错误,然后将错误报告设置回其正常形式,该怎么办?

    关于php - PHP如何在脚本关闭时使用对象析构函数中的trigger_error触发用户错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6227000/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com