2011-06-16 40 views
0

得到李鴻章的內容確定我已經包含在PHP頁面看起來像這樣大約12頁:PHP:內UL

<a name="1"> </a> 
<h2>Unit 1: Awareness of employment in the creative media sector</h2> 
<p /> 
<h3> Learning outcomes:</h3> 
<ul class="outcomes"> 
<li class="n1">Know about employment status in the Creative Media sector</li> 
<li class="n2">Understand the Creative Media employment market place</li> 
<li class="n3">Be able to promote self</li> 
</ul> 
<hr /> 
<ul class="files"> 

我希望能夠給李的內容存儲在數組中,所以我想要找到ul中的每個li的內容,然後將它們推到數組中。

這可能嗎?我聽說過Xpath,但對我來說看起來很亂,任何人都可以更簡單地用一些簡單的PHP來解釋這個問題,還是推動我在正確的方向上進行xpathing?

謝謝。

回答

1

我會建議使用PHP DOM解析器,如this

+0

謝謝用過這個工作。 – 2011-06-19 14:05:37

7
$dom = new DOMDocument(); 
$dom->loadHTML($your_html_page_here); 

$xp = new XPath($dom); 

$classes = $xp->query('//ul[@class="outcomes"]/li'); 

$class_info = array(); 
foreach($classes as $class) { 
    $class_info[] = $class->nodeValue; 
} 

不是非常亂碼。如果有幫助,您可以將DOM模型看作代表文檔的文件系統,而XPath是用於導航該文件系統的目錄路徑規範。

+0

感謝我確定這從所有的讚許起作用,但我無法安裝Xpath類。我從sourceforge下載了xpath.class.php並嘗試使用它,但它仍然顯示'致命錯誤:類'XPath'找不到'。你知道這可能是爲什麼嗎? – 2011-06-16 18:48:19

+0

只需將XPath($ dom)更改爲DOMXpath($ dom),但$ class_info數組爲空。 – 2011-06-16 19:01:01