欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

PHP自动添加http://头 转换网址为链接

程序员文章站 2022-05-14 21:07:04
...
  有时候,当我们需要用户输入网址的时候,一般我们会让用户省略掉"http://",当提交完成后用代码自动再加上http://,若有需要,我们还可将网址转换成链接的形式,类似于众多网页编辑器里的功能,以下代码将实现这类功能。先来看自动添加"http://"头的代码:

  自动添加"http://"头的PHP函数代码:

  1

  2if (!preg_match("/^(http|ftp):/", $_POST['url'])){

  3 $_POST['url'] = 'http://'.$_POST['url'];

  4}

  5?>

  PHP将网址字符串转换成超级链接,可将URL和E-mail 地址字符串转换为可点击的超级链接:

  01

  02function makeClickableLinks($text) {

  03 $text = eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_+.~#?&//=]+)',

  04 '\1', $text);

  05 $text = eregi_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_+.~#?&//=]+)',

  06 '\1\2', $text);

  07 $text = eregi_replace('([_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3})',

  08 '\1', $text);

  09return $text;

  10}

  11?>

  将这两段代码结合起来,可形成以下用法:

  view sourceprint?1

  2$_POST['url']="www.codefans.net";

  3if (!preg_match("/^(http|ftp):/", $_POST['url'])) {

  4 $url = 'http://'.$_POST['url'];

  5}

  6echo makeClickableLinks($url);

  7?>

  最终效果是把www.codefans.net加上了http://,并实现链接的形式。