Zend - The PHP Company




HTML

Add Code


email/url validation and convertion functions  

Type: code fragment
Added by: Mas_Mind
Entered: 07/07/2000
Last modified: 08/12/1999
Rating: ***** (6 votes)
Views: 12302
This piece of code contains functions to verify an web- or email adres and functions to convert web- or email adresses in text to hyperlinks As far as I tested it they cover all possible invalid formats, but don't hesitate to let me know if it doesn't :)


<?php
function validateEmail($email)
{     return 
eregi("^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,3})$"$email);
}

function 
validateURL($url)
{     return 
eregi("^((ht|f)tp://)((([a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,3}))|(([0-9]{1,3}.){3}([0-9]{1,3})))((/|?)[a-z0-9~#%&'_+=:?.-]*)*)$"$url);
}

function 
convertURLS($text)
{     
$text eregi_replace("((ht|f)tp://www.|www.)([a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,3})((/|?)[a-z0-9~#%&\/'_+=:?.-]*)*)""http://www.\3"$text);
    
$text eregi_replace("((ht|f)tp://)((([a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,3}))|(([0-9]{1,3}.){3}([0-9]{1,3})))((/|?)[a-z0-9~#%&'_+=:?.-]*)*)""<a href="\0">\0</a>"$text);
    return 
$text;
}

function 
convertMail($text)
{     
$text eregi_replace("([_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,3}))""<a href='mailto:\0'>\0</a>"$text);
    return 
$text;
}

function 
convertAllLinks($text)
{     
$text convertURLS($text);
    
$text convertMail($text);
    return 
$text;
}
?>


Usage Example


print validateEmail("test@sub.domain.com"); //valid email adres
print validateURL("http://195.66.28.150"); //valid url
print convertMail("valid: test@sub.domain.com bla bla bla invalid: test2@sub.domain..com invalid: test3.@sub.domain.com"); //convert email adresses
print convertURLS("valid: http://www.yourdomain.com bla bla bla valid: ftp://yourdomain.nl invalid: http://www.domain.d valid: http://150.150.150.150");


Rate This Script





Search



This Category All Categories