我是 HTML 和 PHP 的新手。我正在尝试从已解析的 HTML 字符串中删除多个 DOM 元素。
例如:
<tbody>
<tr>
<td>I'd like to find and remove this text</td>
<td>& possibly this too</td>
<td>can you help?</td>
</tr>
</tbody>
提前致谢!
DOMDocument
处理 DOM 操作要好得多(SimpleXML
仅用于解析):
$dom = new DOMDocument;
$dom->loadHTML($html);
$xpath = new DOMXPath($dom);
$textNodes = $xpath->query('//text()');
foreach ($textNodes as $node) {
$node->parentNode->removeChild($node);
}
非常简单,如果我要从 PHP 中的字符串中删除很多东西,我会创建一个要删除的部分数组,遍历它们并从大字符串中一次删除一个。
像
$html = "Loads of html blah blah blah blah......";
$array = array(
"Remove me",
"and me",
"remove me too"
);
foreach($array as $string){
str_replace($string, '', $html);
}
有关 str_replace 的更多信息,请参见http://php.net/manual/en/function.str-replace.php