-3

次のような動的phpコードがあります

$url = "http://www.myweb.com/home";
$mycontents = 'These are the contents with <a href="myweb/local.php" />relative link</a> and <a href="http://www.myweb.com/home/loc.php"> absolute link</a> and some images with <img src="myweb/local.jpg" /> with relative link and <img src="http://www.myurl.com/pictures/pic.jpg" />';

$urlリンクに$mycontents変更が含まれていても、フェッチされたデータに応じて変化しています。変数をスキャンし、$mycontentsa または src とのリンクが見つかった場合は、最初に絶対かどうかを確認し、そうであればそのままにし、そうでなければそのままにし、str_replace を使用してstr_replace("src=\"", "src=\"".$url, $mycontents)$mycontents をエコーする前にすべてのリンクを変更します。 $mycontents がエコーされ、すべての相対リンクをスキャンして変更し、絶対リンクに変更する必要があります。

4

1 に答える 1

0

最初に、探してその値を確認する必要がある属性を正確に特定する必要があります。もちろん、最も簡単なチェックはhttp(s)://、それらの先頭に含まれている URL を探して、それらを既に絶対として分類することです。それ以外は置き換える必要があります。

これらの属性は、基本としてhrefとになりsrcます。

もちろん、これは非常に初歩的なチェックですが、発生する可能性のある特殊なケースを除いて、少なくとも今のところはニーズに合っているはずです。

于 2013-07-17T10:25:11.117 に答える