0

我对 PHP 比较陌生,我需要一个将所有 URL 转换为可点击链接的函数,以及将任何具有图像扩展名(即 jpg、png、gif)的 URL 转换为图像的函数。

所以到目前为止我所拥有的是

    function linkandimage($str) {
     $return = preg_replace('@(https?://([-\w\.]+[-\w])+(:\d+)?(/([\w/_\.#-]*(\?\S+)?[^\.\s])?)?)@', '<a href="$1" target="_blank">$1</a>', $str);
   return $return;
    }

这可以通过链接找到,但我还没有得到图像的解决方案。任何帮助都会很棒,

谢谢

4

1 回答 1

0

好吧,你有一半。只需在正则表达式中添加另一个组件即可搜索图像:

function linkandimage($str) {
  $return = preg_replace('@(https?://([-\w\.]+[-\w])+(:\d+)?(/([\w/_\.#-]*(\?\S+)?[^\.\s])?)?\.(gif|png|jpe?g))@', '<img src="$1" />', $str);
  $return = preg_replace('@(https?://([-\w\.]+[-\w])+(:\d+)?(/([\w/_\.#-]*(\?\S+)?[^\.\s])?)?)@', '<a href="$1" target="_blank">$1</a>', $return);

  return $return;
}
于 2012-08-12T08:00:47.087 回答