$xpath = new DOMXpath($doc);
$res = $xpath->query(".//*[@id='post2679883']/tr[2]/td[2]/div[2]");
foreach( $res as $obj ) {
var_dump($obj->nodeValue);
}
我需要使用“post”一词来记录id中的所有项目。
示例:
<div id="post2242424">trarata</div>
<div id="post114525">trarata</div>
<div id="post8568686">trarata</div>
问题二:
我需要使用HTML标记获取此元素,但$obj->nodeValu
e返回不带html标记的文本。
答案 0 :(得分:2)
如果您想要的所有节点都以“post”开头,则可以使用xpath函数starts-with
来过滤XPath中的节点。例如;
$xpath->query(".//*[starts-with(@id, 'post')]/tr[2]/td[2]/div[2]");
对于第二部分,我认为已经回答了问题 - PHP DOMDocument stripping HTML tags