用php查找字符串中的url

use*_*867 8 php

以下代码用于从php中查找字符串中的url.这是代码:

$string = "Hello http://www.bytes.com world www.yahoo.com";
preg_match('/(http:\/\/[^\s]+)/', $string, $text);
$hypertext = "<a href=\"". $text[0] . "\">" . $text[0] . "</a>";
$newString = preg_replace('/(http:\/\/[^\s]+)/', $hypertext, $string);
echo $newString;
Run Code Online (Sandbox Code Playgroud)

好吧,它显示了一个链接,但如果我提供的链接不起作用,它也不起作用,如果我没有http://写,那么它不会显示链接.我想要提供的任何链接都应该是活动的,比如stackoverflow.com.

任何帮助请..

axi*_*mer 17

一种与http/https/ftp/ftps/scp/scps链接的工作方法: $newStr = preg_replace('!(http|ftp|scp)(s)?:\/\/[a-zA-Z0-9.?&_/]+!', "<a href=\"\\0\">\\0</a>",$str);

我强烈建议不要链接什么时候只有一个点,因为它会考虑PHP 5.2,ASP.NET等链接,这是难以接受的.

更新:如果你想要www.字符串也是如此,看看这个.