Bug #16642 Updated: replace url with a link
| From: | sander@php.net | Date: | Tue, 16 Apr 2002 17:31:24 +0000 |
| Subject: | Bug #16642 Updated: replace url with a link | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-5123@lists.php.net to get a copy of this message | ||
ID: 16642
Updated by: sander@php.net
Reported By: andreas.schempp@gmx.ch
-Status: Open
+Status: Closed
Bug Type: Feature/Change Request
Operating System: Linux 2.4.17 (self compiled)
PHP Version: 4.1.2
New Comment:
No, we can't include a function for stuff like this. This can be easily
done in PHP, so there's no need for a native function.
Previous Comments:
------------------------------------------------------------------------
[2002-04-16 13:27:07] andreas.schempp@gmx.ch
I could not find any function to replace an url within a string with a
link
if someone writes http://www.php.net, I want I to be replaced with
<a
href="http://www.php.net>
I saw this on your page too, its easy to recreate your function myself
with
$string =
preg_replace("((http://)([a-zA-Z1-9\-_\.]+\.[a-zA-Z1-9\-_]+\.[a-z]{2,3}(/[a-z\-/\._\?=&]+)?))",
"<a href=\"\\1\\2\" target=\"_blank\">\\0</a>", $string);
but wouldnt it be nice to replace an url like www.php.net too?
For now, I use
$string =
preg_replace("((http://|ftp://)?([a-zA-Z1-9\-_\.]+\.[a-zA-Z1-9\-_]+\.[a-z]{2,3}(/[a-z\-/\._\?=&]+)?))",
"<a href=\"\\1\\2\" target=\"_blank\">\\0</a>", $string);
to convert every url to an link.
but if you have an url like www.php.net, it will create a link like <a
href="www.php.net">, wich will not work.
To prevent this, I use
$string =
preg_replace("((href=\")([a-zA-Z1-9\-_\.]+\.[a-zA-Z1-9\-_]+\.[a-z]{2,3}(/[a-z\-/\._\?=&]+)?))",
"href=\"http://\\2", $string);
wich will replace anything like href="something.php.net with
href="http://something.php.net
I think it will be nice for other people to include (something like)
this function in php, because many people would use it
thanks
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=16642&edit=1