在运行包含的脚本之前重置PHP错误
我正在结合两个现有脚本,通过使用现有代码构建新的安全时间:在运行包含的脚本之前重置PHP错误,php,wordpress,Php,Wordpress,我正在结合两个现有脚本,通过使用现有代码构建新的安全时间: php\u simple\u html\u dom解析一些html wordpress中的wp-db.php类访问数据库 这两个脚本不能很好地配合。我使用xdebug发现主要问题是由php\u simple\u html\u dom中的这段代码引起的: if (($error=error_get_last())>null) { $this->clear(); return false;
if (($error=error_get_last())>null) {
$this->clear();
return false;
}
因为我使用的wordpress模板引发了一些E_通知级别的错误,这导致我的php_simple_html_dom被清除
奇怪的是,我没有包括任何模板代码,因为我自己包括并实例化了wp-db.php,如下所示:
require_once('../wp-config.php');
require_once('../wp-includes/wp-db.php');
$wpdb = new wpdb(DB_USER,DB_PASSWORD,DB_NAME,DB_HOST);
即使我使用xdebug一步一步地完成代码,它也不会从wordpress、wp-config.php或wp-db.php中找到任何其他内容
编辑:
正如horatio所指出的,这实际上是从
在wp-config.php的末尾包含wp-settings.php。我现在
理解为什么我的调试器从未命中它:netbeans未能命中它
下载wp-settings.php,使其无法调试
然而,这是由error\u get\u last()
返回的错误:
我想我可以用两种不同的策略中的一种来解决这个问题:
一,。停止导致错误运行的不必要wordpress代码
error\u get\u last()
返回的错误根据wp在线源代码库,wp-config.php中有一个require,然后需要一整桶其他包含项。这表明策略1实际上不可行。我可以通过将php\u simple\u html\u dom中的代码更改为:
if来解决它($error>null&&$error['type']!=8)
根据wp在线源代码库,wp-config.php中有一个require,然后需要一整桶其他包含。这表明策略1实际上不可行。我可以通过将php_simple_html_dom中的代码更改为:if($error>null&$error['type']!=8)来解决它
Array
(
[type] => 8
[message] => Undefined index: id
[file] => (real-path-deleted)/wp-content/themes/supermassive/lib/inc/options.php
[line] => 10
)