我在
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元素.
原文地址:https://www.jb51.cc/php/134903.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。