[英]DOMDocument XPath Query to get class name and tag values
我有這個示例代碼,它將提取每個標記的值。 除此之外,獲取該標簽的類名稱..
<?php
$doc = new DOMDocument;
$doc->loadxml( <<< eox
<tr class="calendar_row" data-eventid="42023">
<td class="date"/>
<td class="time">All Day</td>
<td class="currency">CAD</td>
<td class="impact">
<span title="Non-Economic" class="holiday"/>
</td>
<td class="event">
<span>Bank Holiday</span>
</td>
<td class="detail">
<a class="calendar_detail level1" data-level="1" title="Open Detail"/>
</td>
<td class="actual"/>
<td class="forecast"/>
<td class="previous"/>
<td class="graph"/>
</tr>
eox
);
$xpath = new DOMXPath($doc);
foreach( $xpath->query('//tr[@data-eventid="42023"]/td[@class]') as $n ) {
echo $n->nodeName.'-'.$n->nodeValue."<br />";
}
?>
使用上面的代碼片段,我想要的就是獲取這些值,即使某些標簽格式不正確(我正在廢棄網絡源代碼)。我如何在DOMDocument XPath查詢中執行此操作。 我遇到了麻煩,因為要獲取的值是:
td-
td-All Day
td-CAD
td-
td-Bank Holiday
td-
td-
td-
td-
td-
代替:
date-
time-All Day
currency-CAD
impact-
event-Bank Holiday
detail-
actual-
forecast-
previous-
graph-
而不是做$n->nodeName
你應該這樣做$n->getAttribute('class')
。
echo $n->getAttribute("class") . '-' . $n->nodeValue . "<br />";
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.