2011-05-11 50 views
3

我希望有人能幫助我。我正在使用PHP Simple HTML DOM Parser(http://simplehtmldom.sourceforge.net/manual.htm),但現在我正在嘗試根據某個名稱查找元素。例如,在所獲取的HTML,有可能是一個標籤,如:使用PHP簡單的HTML DOM分析器搜索元素名稱

<p class="mattFacer">Matt Facer</p> 
<p class="mattJones">Matt Jones</p> 
<p class="daveSmith">DaveS Smith</p> 

我需要做的是在這個HTML閱讀和捕捉匹配任何開始與這個詞的任何HTML元素,「亞光」

我已經試過

$html = str_get_html("http://www.testsite.com"); 
foreach($html->find('matt*') as $element) { 
    echo $element; 
} 

但這不起作用。它什麼都不返回。

可以做到這一點嗎?我基本上想要搜索任何包含單詞「matt」的HTML元素。它可能是一個跨度,div或p。

我在這裏死路一條!

+0

在XPath(這我不知道,如果簡單DOM支持),你只是做'// P [開始 - 用(@類,「亞光」)]' – 2011-05-11 19:34:00

回答

3
$html = str_get_html("http://www.testsite.com"); 
foreach($html->find('[class*=matt]') as $element) { 
    echo $element; 
} 

讓我們嘗試

+0

感謝 - 是的,這是成功了!如果我不知道它是類名還是id,是否可以這樣做?例如:

2011-05-11 20:10:22

0

也許這?

foreach(array_merge($html->find('[class*=matt]'),$html->find('[id*=matt]')) as $element) { 
    echo $element; 
} 
相關問題