我想从本地HTML文件中提取内容。而我使用HTML解析方法,但是什么都不要。PHP通过HTML解析HTML内容获取空对象
PHP代码如下:为$tables
$doc = new \DOMDocument();
$doc->loadHTML("assets.html");
$tables = $doc->getElementsByTagName('table');
foreach($tables as $table) {
$content = $doc->saveHTML($table);
}
echo $content;
调试一步一步,$doc->loadHTML("assets.html")
回报true
,并得到了DOMNodeList::__set_state(array( ))
。
assets.html的部分如下:
<div class="btn-group">
<button type="button" class="btn btn-info dropdown-toggle" id="manage" data-toggle="dropdown">
新增
<span class="caret"></span>
</button>
<ul class="dropdown-menu " role="menu">
<li><a href="#" id="newassets">增加资产</a></li>
<li><a href="#" id="newdetail">增加明细</a></li>
</ul>
</div>
<button type="button" class="btn btn-danger" id="deleteassets" value="" >删除</button>
<button type="button" class="btn btn-success" id="modifyassets" value="" >修改</button>
<button type="button" class="btn btn-warning" id="lend-lease" value="" >领用</button>
</div>
<div class="dataTable_hr_info">
<table class="table table-striped table-bordered table-hover" action="" id="assetsInfo">
<thead>
<tr>
<th data-field="state" data-checkbox="true"></th>
<th data-field="pr" >序号</th>
<th data-field="category">资产类别</th>
<th data-field="name" >资产名称</th>
<th data-field="model">型号</th>
<th data-field="unit">单位</th>
<th data-field="count">数量</th>
</tr>
</thead>
</table>
</div>
</div>
</div>
确定'$ doc'中有正确的文件,它加载是否正确?此代码是否会在日志中产生任何错误? – tadman
我只是检查$ doc-> loadHTML(“assets.html”)返回true。我如何检查它是否正确加载?没有找到错误信息。 – Lisa
我认为在这里raideance有正确的想法。也许它像字面上那样解析那个字符串就好像那个文档一样。 – tadman