php - 如何捕捉或防止调用退出,死亡

标签 php quickbooks

我使用适用于 Windows 的 QuickBooks。并且 Windows 应用程序调用我的后端,在某些库脚本中它调用 exit 或 die ...所以我无法捕获响应,需要检测退出运行的位置或在退出前捕获输出。 例如

try{
    $lib->run();
} catch on exit ($output) {
    log($output);
}

所以当我启用 QuickBooks_WebConnector_Handlers::HOOK_LOGINSUCCESS 钩子(Hook)时,也许有人知道它会调用 exit...并且调试器显示它不会在 Hook 时进入我的函数...所以它之前就死了。

最佳答案

我是您正在使用的 QuickBooks 库 (https://github.com/consolibyte/quickbooks-php) 的作者。

库调用 exit()/die() 有一个很好的理由——因为如果你在它调用 exit/die 之后做任何事情,你会破坏 SOAP 输出和库的日志记录并破坏你的QuickBooks 集成。库中内置了很多很多 Hook 点,专门用于允许您执行各种操作,而不必担心退出或死亡的调用。

根据你所说的,大约有 99.9% 的可能性是你在做一些你不应该在代码中出现的事情,或者你的代码中有 PHP 或 SQL 错误你没有看到。

发布您的代码,并告诉我们为什么您认为您需要 catch 退出/死亡的调用,我可以编辑我的问题以进一步帮助您。

关于php - 如何捕捉或防止调用退出,死亡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26509391/

相关文章:

php - 如何在 laravel 函数中添加 php 变量

java - 使用QuickBooks Web Connector的身份验证问题:对象引用未设置为对象的实例

Quickbooks 在线 REST API : Is it possible to apply Date functions in the SQL query?

php - “walk”使用多线程(异步)和hack(HHVM)的PHP数组

php - 如何在 PHP 中捕获 oracle 宽限期消息?

php - Codeigniter 无法从 URL 中删除索引

c# - 如何使用 QBFC13 和 C# 获取一个月的所有发票并将其全部保存为 PDF?

mysql - 如何配置 QODBC 驱动程序以与您的 QuickBooks 一起使用?

c# - QuickBooks 自定义应用程序部署

php - Braintree 付款托管资金