Find URLs in a string and make clickable links in PHP
In this short article, we’ll discuss how to find URLs in a string and make clickable links in PHP. Sometimes you have data without any hyperlinks tags and when displayed on a web page you may need to convert the hyperlinks to our page.
As you can often see in Facebook and other social media networks, if there is a URL to the text of a message or comment, it becomes clickable. So here we will learn how to find a url in content and convert to anchor tag link using PHP.
Using built-in PHP function preg_replace(), we can easily find the URLs in text and make links in PHP. The preg_replace()
function matches the pattern from string and replaces it with a defined modified string.
You can also check Find URLs in string and make a link using JavaScript.
Here, we take an example to find multiple URLs from a string and convert them to URLs automatically.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | <?php function makeUrltoLink($string) { // The Regular Expression filter $reg_pattern = "/(((http|https|ftp|ftps)\:\/\/)|(www\.))[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(\:[0-9]+)?(\/\S*)?/"; // make the urls to hyperlinks return preg_replace($reg_pattern, '<a href="$0" target="_blank" rel="noopener noreferrer">$0</a>', $string); } $str = "Visit www.cluemediator.com and subscribe us on https://www.cluemediator.com/subscribe for regular updates."; echo $convertedStr = makeUrltoLink($str); // Output: Visit <a href="www.cluemediator.com" target="_blank" rel="noopener noreferrer">www.cluemediator.com</a> and subscribe us on <a href="https://www.cluemediator.com/subscribe" target="_blank" rel="noopener noreferrer">https://www.cluemediator.com/subscribe</a> for regular updates. ?> |
In the above example, we have created a basic function that finds the pattern in a string and turns it into clickable links. It will find URLs that contain http, https, ftp, ftps or www.
That’s it for today.
Thank you for reading. Happy Coding..!! 🙂
Howdy! Someone in my Facebook group shared this
site with us so I came to give it a look. I’m definitely enjoying the information. I’m book-marking and will be tweeting this to my followers!
Fantastic blog and amazing style and design.
Glad it helped!