5

助けが必要な小さな問題があります。

$post['text'] が「https://stackoverflow.com/blah?blahはとてもクールなウェブサイトです」のようなデータに等しい場合、どのようにして type タグで URL ビットだけを作成できるでしょうか。 ..

したがって、最終的な HTML の結果は次のようになります。

<p><a href="https://stackoverflow.com/blah?blah">https://stackoverflow.com/blah?blah</a> is such a cool website</p>

私は少し初心者です。私は実際には 14 歳の子供で、まだコードを書くのは初めてですが、大好きです!

4

2 に答える 2

3

通常の経験値を使用できます。

function make_hyperlink($text)
{
    // match protocol://address/path/
    $text = preg_replace("{[a-zA-Z]+://([.]?[a-zA-Z0-9_/-])*}", "<a href=\"\\0\" target='_blank'>\\0</a>", $text);

    // match www.something
    $text = preg_replace("{(^| )(www([.]?[a-zA-Z0-9_/-])*)}", "\\1<a href=\"http://\\2\" target='_blank'>\\2</a>", $text);

    // return $text
    return $text;
}

echo make_hyperlink('http://stackoverflow.com/blah?blah');

上記の機能を使用します。シンプルな URL テキストから URL を置き換えます。

于 2013-07-14T10:28:46.397 に答える
1
   <p> <a href="<?=$_POST['text']?>"> <?=$_POST['text']?> </a> is a cool website </p>
于 2013-07-14T16:41:28.553 に答える