0
我有一個程序,從網絡中刪除某些網頁;然後,我想遍歷剩餘的頁面,並「取消鏈接」到那些已刪除頁面的任何鏈接。我正在使用simplehtmldom。我的函數需要一個源頁面($ source)和一個頁面數組($ skipList)。它找到鏈接,然後我想操縱dom將元素轉換爲$ link-> innertext,但我不知道如何。任何幫助?用純文本替換鏈接用php簡單的html dom
function RemoveSpecificLinks($source, $skipList) {
// $source is the html source file;
// $skipList is an array of link destinations (hrefs) that we want unlinked
$docHtml = file_get_contents($source);
$htmlObj = str_get_html($docHtml);
$links = $htmlObj->find('a');
if (isset($links)) {
foreach ($links as $link) {
if (in_array($link->href, $skipList)) {
$link->href = ''; // Should convert to simple text element
}
}
}
$docHtml = $htmlObj->save();
$htmlObj->clear();
unset($htmlObj);
return($docHtml);
}
謝謝!我使用了innertext,它保留鏈接文本中的任何html格式,但明文,innertext或href都可以工作。 這樣一個明確的解決方案,我踢自己沒有想到它。再次感謝... –
沒問題。很高興我能幫上忙 :-) – George