php - 使用 getElementById 是否可以实现相同的目的

标签 php dom

通过下面的代码,我可以使用 DOM 的 getElementsByTagName 获取 html 表的元素,并且它可以工作。

$dom = new DOMDocument();
$dom->loadHTMLFile("any.html");

## get table by tagName

$tables= $dom->getElementsByTagName('table');
$table = $tables->item(0);

foreach($table->getElementsByTagName('tr') as  $key =>$tr){
     $tr->getElementsByTagName('td')->item(0)->nodeValue;
}

但我想通过 getElementById 获取表格。可以使用表的id吗?

最佳答案

实际上你需要先这样做:

$doc->validateOnParse = true;

然后

$tableId = 'someId';
$table = $dom->getElementById($tableId);

foreach($table->getElementsByTagName('tr') as  $key =>$tr){
     $tr->getElementsByTagName('td')->item(0)->nodeValue;
}

关于php - 使用 getElementById 是否可以实现相同的目的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9605362/

相关文章:

java - 如何在 Java 中将 SOAP 消息的字节数组转换为原始 XML

javascript - 模块变量无法使用 DOM 元素启动

PHP_XLSXWriter_plus大型Mysql数据集缺失数据

javascript - 如何在IE中的contentEditable div中获取选定的textnode?

javascript - 滚动到没有名称的哈希

php - 删除 Markdown 格式以快速摘录

javascript - 获取 DOM 元素的性能差异

php - 在 Laravel 中搜索数组

php - 如何将多字字符串作为变量传递给php中的url

php - Redis PHP 缓存 "ERR Not permitted"