【问题标题】:PHP DOMXPath problemPHP DOMXPath 问题
【发布时间】:2011-05-27 14:14:21
【问题描述】:
$xpath = new DOMXpath($doc);
$res = $xpath->query(".//*[@id='post2679883']/tr[2]/td[2]/div[2]");
foreach( $res as $obj ) {
    var_dump($obj->nodeValue);
}

我需要把id中带有“post”字样的所有物品都拿走。

例子:

<div id="post2242424">trarata</div>
<div id="post114525">trarata</div>
<div id="post8568686">trarata</div>

第二个问题: 我需要使用 HTML 标签获取这些元素,但 $obj-&gt;nodeValue 返回的文本没有 html 标签。

【问题讨论】:

    标签: php xpath domxpath


    【解决方案1】:

    如果您想要的所有节点都以“post”开头,您可以使用 xpath 函数 starts-with 过滤 XPath 中的节点。例如;

    $xpath->query(".//*[starts-with(@id, 'post')]/tr[2]/td[2]/div[2]");
    

    关于第二部分,我想已经回答了-PHP DOMDocument stripping HTML tags

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-13
      • 2012-05-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多