首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何忽略来自QueryPath的致命错误?

如何忽略来自QueryPath的致命错误?
EN

Stack Overflow用户
提问于 2013-07-25 16:34:27
回答 2查看 1.5K关注 0票数 0

我正在使用QueryPath从一个网站上抓取一些数据。但是,我经常收到下面的错误消息,并且脚本终止。

代码语言:javascript
复制
PHP Catchable fatal error:  Argument 1 passed to DOMXPath::__construct() must be an instance of DOMDocument, null given, called in ....inc/QueryPath/QueryPath/CSS/DOMTraverser.php on line 417 and defined in ....inc/QueryPath/QueryPath/CSS/DOMTraverser.php on line 467

这个错误没有给我任何线索,说明错误来自哪一行代码,但假设它来自$outHtml = htmlqp($outHtml);,我尝试用@htmlqp为htmlqp命令加上前缀。

这不起作用,所以我试着用catch{}语句包装htmlqp,这似乎也没有帮助。

我所要做的就是忽略错误并继续,而不是让脚本爆炸。帮助!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-07-25 16:37:32

这是个致命的错误。那就抓住它。

如果你抓住它,你可以得到一个完整的堆栈跟踪。

例如:

代码语言:javascript
复制
try {
   thisfunctionthrowsanexception();
} catch (Exception $e) {
    var_dump(get_class($e));
    echo $e->getTraceAsString();
}

@隐藏错误。你不会想要用这个的。

票数 2
EN

Stack Overflow用户

发布于 2016-10-18 00:17:41

我只是试图解决一些生产代码中的相反问题:类型暗示根本不起作用。我追踪到罪魁祸首的原因如下:

代码语言:javascript
复制
set_error_handler('errorHandler');

function errorHandler($errno, $errstr, $errfile, $errline) {
    // Whole bunch of irrelevant code
    // ...

    return;
}

它处理错误..。根本什么都不做!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17863787

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档