2011-01-27 69 views
0

我有一系列希望從中獲取數據的選擇框,基本上將它們轉換爲數組。什麼是最有效的方式來做到這一點?現在,我想....從選擇框到數組

$html = file_get_contents('http://www.domain.com'); 

    preg_match_all("/name\=\'subscription\[division_id\]\' style\=\'width: 170px;\'>(.+?)<\/select>/is", $html, $matches); 

然後我就在想運行其他代碼採取的選項標籤到一個數組中,但這似乎它可能是有點不必要的密集

+0

您是否在搜索其他人的網站以獲取他們選擇的內容? – 2011-01-27 19:41:15

回答

1

如果您無論出於什麼原因都在拼命,你可能可以用php的DOMXPath命令解析頁面的html。我不能寫出所有的代碼,但你可以開始使用:

$xpath = new DOMXPath($dom); 
$select_values = $xpath->evaluate("/html/body//option"); 

然後你通過運行一個循環得到的選項的內容應有盡有。無論如何,有了這樣的事情,你可以避免與正則表達式的所有廢話。

+0

如果HTML沒有結束標籤或類似的東西,DOMXPath會中斷嗎? – Webnet 2011-01-27 20:15:26