尝试从DOM中捕获元素时,我一直收到此错误。
$html=file_get_html("some url here");
echo $html;
$ret = $html->find('a');
echo $ret;
我可以看到,当我只打印
file_get_html
时,实际页面是从$html
中的url显示的,但是无论搜索什么元素,find()
都会发生错误。从我阅读的其他解决方案中,它们指出要增加simple_html_dom.php中的MAX_FILE_SIZE
和/或从该文件中的strlen($str) > MAX_FILE_SIZE
中删除function str_get_html
。这些选项均无效。任何帮助,将不胜感激。
最佳答案
从我阅读的内容来看,find()无法正常工作,因为它无法将DOM识别为对象。我不确定我是否完全理解为什么,但是我能够将代码放入if语句中,并且如果url存在,则继续执行代码。这似乎有效。这可能只是一个临时解决方案,但是由于我还没有找到其他解决方案,因此我将继续这样做。
if($html){
$ret = $html->find('a');
echo $ret;}
关于php - Uncaught Error : Call to a member function find() on boolean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45018807/