0
我使用一些代碼來挑選出所有從HTML頁面的<td>
標籤:PHP DOM遍歷HTML節點和childnode
$dom = new DOMDocument;
$dom->loadHTML($html);
foreach ($dom->getElementsByTagName('td') as $node) {
$array_data[ ] = $node->nodeValue;
}
這存儲在我的數組中的數據的罰款。
正在看着的HTML數據是:
<tr>
<td>DATA 1</td>
<td><a href="12345">DATA 2</a></td>
<td>DATA 3</td>
</tr>
的$array_data
回報:
Array([0])=>DATA 1 [1]=>DATA 2 [2]=> DATA 3)
我期望的輸出是獲得代碼出與該網頁上相關聯的<a>
標籤。所需的輸出:
Array([0])=>DATA 1 [1]=>12345 [2]=>DATA 2 [3]=> DATA 3)
我覺得<a>
會被稱爲子節點,我很新的使用DOM對不起工作,如果這似乎是一個愚蠢的問題。
我已閱讀SO鏈接: Using PHP dom to get child elements
我用這個代碼,以挑選出在href:
foreach ($dom->getElementsByTagName('td') as $node) {
foreach ($node->getElementsByTagName('a') as $node){
$link = $node->getAttribute('href');
echo '<br>';
echo $link;
}
$array_data[ ] = $node->nodeValue;
}
任何幫助或指針其他閱讀材料將大大appreicated!
謝謝
我張貼的答案解決您的問題。那麼爲什麼你改變了問題?你有什麼問題? – Mohammad
感謝您的解決方案穆罕默德。我正在閱讀其他SO帖子,以便同時找到解決方案。一旦我在SO帖子上發現了一些東西,我就在我的問題中發佈了更新後的代碼。 – Jeanclaude