テキスト文字列のカスタム「タグ」をキャッチし、書き直して置き換える必要があります。次のようになります。
<mytag=http://url.com/file.php?some=variable&another=variable>
最初にタグからURLを取得する必要があります。次に、関数でURLを書き直してから、タグ全体を新しいURLに置き換えます。誰かがそれをキャッチして交換する方法を教えてもらえますか?テキストには、さまざまなURLのタグを追加できます。
それは些細なことです。そのための十分なコンテキストとアンカーがあります。そして、基本的にpreg_replace
orを使用するとpreg_repace_callback
(より複雑な置換スキームの場合)、次のように機能します。
$src = preg_replace('~ <mytag= (http://[^>]+) > ~smix', '<a href=$1>$1</a>', $src);
ここの空白は装飾的です。重要なのは、[^>]
あまり一致しないため、および(
URL)
をとしてキャプチャするため$1
です。
あなたはこれを試すことができます:
$my_tag = "<mytag=http://url.com/file.php?some=variable&another=variable>";
preg_match( "/<mytag=(.*)>/", $my_tag, $matches );
$new_tag = str_replace( $matches[1], "http://newurl.com", $my_tag);
$new_tag
変数は次のようになります。
<mytag=http://newurl.com>