读取simpleDomObject时出错

时间:2011-06-29 10:37:16

标签: php simple-html-dom

我有以下模板文件,名为'test.html'

<div class='title'>TEST</div>

我有以下PHP代码:

<?
include "simplehtmldom/simple_html_dom.php";
$dom = file_get_html( "test.html" );
echo $dom->outertext;
?>

到目前为止,这显示了test.html文件。但是当我尝试改变某些东西时,我得到一个错误:

<?
include "simplehtmldom/simple_html_dom.php";
$dom = file_get_html( "test.html" );
$dom->find('.title')->innertext = "changed";
echo $dom->outertext;
?>

警告:尝试在第4行的 E:\ internet \ test.php 中分配非对象的属性。虽然我确实认为我正在关注手册。这里出了什么问题?显然$ dom-&gt; find('。title')没有返回有效元素,但问题是:为什么?它应该找到DIV?

1 个答案:

答案 0 :(得分:1)

首先:

您显然错过了找到的元素的索引,因此没有属性find()->innertext 这里修复了代码:

<?php
error_reporting(E_ALL);
include "simplehtmldom/simple_html_dom.php";
$dom = file_get_html( "index.html" );
$dom->find('.title',0)->innertext = "changed";
echo $dom->outertext;

第二

不会建议你使用Simple Html DOM库,因为它是旧的而不是实际的 看看QueryPath库,它正在做同样的事情并处于更好的状态。

http://querypath.org/

相关问题