1
這是很容易得到使用Zend_Dom_Query通過類的HTML節點:使用PHP/Zend_Dom_Query獲取帶有多個類的HTML節點的XPath查詢?
$dom = new Zend_Dom_Query($html);
$rows = $dom->query("//div[@class='upc']");
然而,HTML的節點往往有多個類,如:
<div class="hidden upc">
這怎麼可能,使用Zend_Dom_Query和XPath,找到所有節點,其中包括類的列表中的特定類,而不是具有類屬性的特定值?
I have found an example that does this using Java,但它應用到PHP XPath引擎似乎並沒有工作,因爲它給出了一個錯誤的XPath查詢無效:
//div[contains(concat(' ',normalize-space(@class),' '),' foo ')]
您是否正在尋找? http://westhoffswelt.de/blog/0036_xpath_to_select_html_by_class.html – 2011-05-06 21:56:38
示例XPath用空格填充值並使用'contains()'查找也填充空格的NMTOKEN是正確的方法。這是一個有效的XPath表達式。你遇到了什麼錯誤? – 2011-05-07 01:26:39
對於XPath表達式,您是不是應該使用'$ dom-> queryXpath(...)'而不是'$ dom-> query(...)'?您從上次顯示的XPath表達式得到的具體錯誤消息是什麼? – LarsH 2011-05-07 02:44:09