Re: putting a url in an anchor tag
| From: | JSheble | Date: | Thu, 14 Mar 2002 16:46:42 +0000 |
| Subject: | Re: putting a url in an anchor tag | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-88546@lists.php.net to get a copy of this message | ||
Here's a function that was sent to me in response to me needing the exact same thing:
function pb_t2h_URLMarkup ($Text, $StyleClass = '', $Target = '')
{
if ($StyleClass != '')
$ClassS = " class='$StyleClass'";
else
$ClassS = "";
if ($Target != '')
$TargetS = " target='$Target'";
else
$TargetS = '';
/* Match for URL strings (the part after 'http://'). Only does quite * loose matching. Handles URL parameters and urlencoded chars (%xy). * '&' chars have to be treated specially because htmlentities() * converts them to '&' */ $URLSMatch = '([\w\.\/~\?%=\-\&]|&)+)';
$Patterns = array ('/([^"\']|\A)(http:\/\/' . $URLSMatch . '/',
'/([^"\'])(ftp:\/\/[\w\.\/~\-]+)/',
'/([^"\'\w-\.\/]|\A)(www\.' . $URLSMatch . '/',
'/([^"\'\w\.~\-=]+@[\w\.~\-]+)/');
$Replacements = array ("\\1<a href='\\2'$ClassS$TargetS>\\2</a>",
"\\1<a href='\\2'$ClassS$TargetS>\\2</a>",
"\\1<a href='http://\\2'$ClassS$TargetS>\\2</a>",
"<a href='mailto:\\1'$ClassS>\\1</a>");
return preg_replace ($Patterns, $Replacements, $Text);} At 10:35 AM 3/14/2002 -0600, Tyler Longren wrote:
Hello, I've been playing with this since lastnight. I have a string of text...Example: "This is a test string of test, please go to http://www.google.com now." I need something that will catch the "http://www.google.com" part, and make into a link instead of just plain text. Does anyone know how I should go about doing this? I've looked through a few code repositories, but haven't found anything. Thanks, Tyler -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php