使用简单的html dom解析外部html导致致命错误

时间:2013-02-02 14:49:01

标签: php simple-html-dom

我正在尝试获取TNT包裹的最新状态(在这种情况下“以良好的条件交付”),但我无法使用简单的html dom解析外部html。获取致命错误:在第6行的非对象上调用成员函数find()

<?php 
include("simple_html_dom.php");

$html = file_get_html('http://www.tnt.com/webtracker/tracking.do?&cons=323626321');

$e=$html->find('table.appTable', 1)->find('tr[valign=top]', 0)->find('td', 3);

echo $e;
?> 

即使是来自http://simplehtmldom.sourceforge.net/index.htm的示例代码也会给我同样的错误

<?php
$html = file_get_html('http://www.google.com/');
foreach($html->find('img') as $element) 
   echo $element->src . '<br>';
?>

我做错了什么?

1 个答案:

答案 0 :(得分:0)

 file_get_html 

使用

 file_get_contents

从url读取html页面。您需要确保此功能未被阻止。在你的情况下,它似乎是

 allow_url_fopen = Off

在php.ini中阻止了它。

但无论如何,最好使用

 if ($html)

确保在做任何事情之前一切顺利。