我可以通过PHP的DOMDocument获得兄弟姐妹吗?

我在 PHP的DOMDocument中得到了一些h3引用.
$dom = new DOMDocument();

$dom->loadHtml($content);

$h3s = $dom->getElementsByTagName('h3');

foreach($h3s as $h3) {

    var_dump($h3->nodeValue);

}

我需要在h3之后获得下一个元素.在这种情况下,它将是下一个h3或文档末尾的所有元素.

它使用正则表达式很容易,但我不想在这里使用它来解析HTML.

作为参考,那个正则表达式是……

preg_match_all('/<h3>([^<]+)<\/h3>(.*?)(<h3|$)/',$content,$matches);

(这是脆弱的,因此需要正确的解析).

那么我如何使用DOMDOcument在上面的正则表达式的$matches中使用我期望的数据呢?

我检查了documentation,但找不到相当于JavaScript的nextSibling属性.

$h3-> nextSibling和$h3-> prevIoUsSibling是您正在寻找的.

getElementsByTagName返回一个DOMNodeList,当你迭代它时,它包含DOMNode元素.

http://www.php.net/manual/en/class.domnode.php

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...