[英]Can I extract html paragraphs from mysql instead of counting characters?
[英]Extract only first level paragraphs from html
我有以下html:
<div id="myID">
<p>I want this</p>
<p>and I want this</p>
<div>
<p>I don't want this</p>
</div>
</div>
我只想提取第一級<p>...</p>
元素。
我嘗試使用出色的simple_html_dom
庫,例如$html->find('#myID p')
但在上述情況下,這會找到所有三個<p>...</p>
元素
有一個更好的方法嗎?
不必使用某些外部庫,為什么不使用內置類來處理dom?
首先使用您的HTML創建DOMDocument實例:
$dom = new DOMDocument();
$dom->loadHtml($yourHtml);
之后,使用DOMXPath選擇元素:
$xpath = new DOMXpath($dom);
$nodes = $xpath->query("//*[@id='myID']/p");
var_dump($nodes->length); // outputs 2
這將選擇所有p
元素,它們是id為myID
的元素的直接子元素。 演示版
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.