Advertisement
Guest User

Untitled

a guest
Jun 27th, 2017
483
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.96 KB | None | 0 0
  1. <?php
  2.  
  3. /**
  4. * Make email clickable
  5. *
  6. * @author Nguyen Tan Tai <taisang1996@gmail.com>
  7. * @param string Input text
  8. * @param boolean Want add <span> inside <a>?
  9. * @return string Replaced string format with link or link span
  10. */
  11. function makeEmailClickable($input, $span = false) {
  12. $regex = '/\w+@\w+\.\w+/';
  13.  
  14. $formatLink = function($matches) {
  15. return "<a href=\"mailto:$matches[0]\">$matches[0]</a>";
  16. };
  17.  
  18. $formatLinkSpan = function($matches) {
  19. return "<a href=\"mailto:$matches[0]\"><span>$matches[0]</span></a>";
  20. };
  21.  
  22. $format = $span ? $formatLinkSpan : $formatLink;
  23.  
  24. return preg_replace_callback($regex, $format, $input);
  25. }
  26.  
  27. $input = <<<EOD
  28. taisang1996@gmail.com
  29. ngthiminhthu121@gmail.com
  30. taisang19962gmail.com
  31. taisang1996#gmail.com
  32. taisang1996\$gmail.com
  33. taisang1996@gmail,com
  34. taisang1996@gmail/com
  35. taisang1996@gmail\com
  36. taisang1996@gmail*com
  37. 01234432132
  38. EOD;
  39.  
  40. var_dump($input);
  41. var_dump(makeEmailClickable($input));
  42. var_dump(makeEmailClickable($input, true));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement