将Twitter状态上的链接转换为可单击的url。加@和#

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将Twitter状态上的链接转换为可单击的url。加@和#相关的知识,希望对你有一定的参考价值。

To convert links on a twitter status to a clickable url. Also convert @ to follow link, and # to search
  1. /**
  2. *
  3. * twitterStatusUrlConverter
  4. *
  5. * To convert links on a twitter status to a clickable url. Also convert @ to follow link, and # to search
  6. *
  7. * @author: Mardix - http://mardix.wordpress.com, http://www.givemebeats.net
  8. * @date: March 16 2009
  9. * @license: LGPL (I don't care, it's free lol)
  10. *
  11. * @param string : the status
  12. * @param bool : true|false, allow target _blank
  13. * @param int : to truncate a link to max length
  14. * @return String
  15. *
  16. * */
  17. function twitterStatusUrlConverter($status,$targetBlank=true,$linkMaxLen=250){
  18.  
  19. // The target
  20. $target=$targetBlank ? " target="_blank" " : "";
  21.  
  22. // convert link to url
  23. $status = preg_replace("/((http://|https://)[^ )
  24. ]+)/e", "'<a href="$1" title="$1" $target >'. ((strlen('$1')>=$linkMaxLen ? substr('$1',0,$linkMaxLen).'...':'$1')).'</a>'", $status);
  25.  
  26. // convert @ to follow
  27. $status = preg_replace("/(@([_a-z0-9-]+))/i","<a href="http://twitter.com/$2" title="Follow $2" $target >$1</a>",$status);
  28.  
  29. // convert # to search
  30. $status = preg_replace("/(#([_a-z0-9-]+))/i","<a href="http://search.twitter.com/search?q=%23$2" title="Search $1" $target >$1</a>",$status);
  31.  
  32. // return the status
  33. return $status;
  34. }

以上是关于将Twitter状态上的链接转换为可单击的url。加@和#的主要内容,如果未能解决你的问题,请参考以下文章

用于将URL自动转换为可单击的超链接(锚定标记)的函数

将字符串转换为可单击的URL

将背景图像转换为可单击的链接

PHP 自动将URL转换为可点击超链接(锚标记)的功能

如何将字符串中的 URL 呈现为可点击的超链接?

sencha / javascript - 如何从 tpl 模板中调用函数