0

PHPページがあります。ページ内のリンクのすべての href を取得し、それらを別のものに変更してから、ページを表示することになっています。しかし、それはしていません。これが私のコードです:

$returndata = file_get_contents($url);
$doc= new DOMDocument(); 
@$doc->loadHTML($returndata);
foreach($doc->getElementsByTagName('a') as $anchor)
{
        $href=$anchor->getAttribute('href');
        $splited=str_split($href);
        $hashed=implode("*",$splited);
        $anchor->setAttribute("href", $hashed);
} 
echo $returndata;

しかし、setAttribute何もしていません。次に、その前にこれを追加してみました:

$anchor->removeAttribute("href"); 

しかし、変化はありません。

4

1 に答える 1

1

あなたの例でのエコー$returndataは、処理している HTML ドキュメントとは何の関係もありません。変更されていない古い文字列データです。

DOMDocumentを使用して操作している実際のものを出力する必要がありますDomDocument::saveHTML

于 2013-06-15T17:46:33.923 に答える