壊れたリンクの「検索と置換」システムを実装しようとしています。問題は、一部のリンクには代替がないことです。そのため、特定の li 要素をコメントアウトする必要があります。これを行うには、以下のコードを参照してください。(私は HTML フォームから始めています)。
<?php
$brokenlink = $_POST['brokenlink'];
$newlink = $_POST['newlink'];
$brokenlink = '"' . $brokenlink . '"';
$newlink = '"' . $newlink . '"';
$di = new RecursiveDirectoryIterator('hugedirectory');
foreach (new RecursiveIteratorIterator($di) as $filename => $file) {
// echo $filename . ' - ' . $file->getSize() . ' bytes <br/>';
$filetoedit = file_get_contents($file);
if(strpos($filetoedit, $brokenlink)) {
echo $brokenlink . "found in " . $filename . "<br/>";
$filetoedit = str_replace($brokenlink, $newlink, $filetoedit);
file_put_contents($filename, $filetoedit);
}
}
?>
私が達成したいのはこれです: URL がある場合、その li 親を見つけられるようにしたいです。たとえば、ユーザーがhttp://www.espn.comを HTML フォームに入力した場合、PHP が以下のコードをコメントアウトできるようにしたいのですが、PHP がサーバー上でこの要素を見つけられるようにしたいと考えています。
<li><a href="http://www.espn.com" target="_blank" data-new="20120627">Sports</a></li>
これを次のように置き換えます。
<!-- <li><a href="http://www.espn.com" target="_blank" data-new="20120627">Sports</a></li> -->
これは可能ですか?ありがとう。