希望這是可能的簡單的HTML DOM,我刮的網頁看起來像這樣:用PHP Simple Html Dom獲取不同類型的前一個元素?
<h5>this is title 1</h5>
<img>
<img>
<img>
<h5>this is title 2</h5>
<img>
<img>
<h5>this is title 3</h5>
<img>
<img>
<img>
<img>
等等
我試圖讓它看起來像:
<h5>this is title 1</h5>
<img>
<h5>this is title 1</h5>
<img>
<h5>this is title 1</h5>
<img>
<h5>this is title 2</h5>
<img>
<h5>this is title 2</h5>
<img>
這意味着每個IMG我需要找到並抓住第一個先前的H5,我想。有沒有父母的div或任何結構使它更容易,這幾乎是我描述它。
我使用看起來像這樣(簡化)代碼:在非調用一個成員函數prev_sibling():
foreach($html->find('img') as $image){
//do stuff to the img
$title = $html->find('h5')->prev_sibling();
echo $title; echo $image;}
一切我已經與prev_sibling試圖讓我一個「致命錯誤 - 對象「,我想知道我想要做什麼,甚至可能與PHP簡單的HTML Dom。我希望如此,我試過的所有其他刮刀都讓我把頭髮拉出來。
這幾乎做到了,謝謝!現在我必須弄清楚如何從圖像中獲得'alt',但我希望這不應該太難。 – jthomasbailey 2012-03-11 22:23:56
@jthomasbailey - 使用這個:'if(isset($ el-> alt))$ alt = $ el-> alt;' – 2012-03-11 22:25:30
太棒了!謝謝! – jthomasbailey 2012-03-11 22:39:47