有时候,当我们需要用户输入网址的时候,一般我们会让用户省略掉"http://",当提交完成后用代码自动再加上http://,若有需要,我们还可将网址转换成链接的形式,类似于众多网页编辑器里的功能,以下代码将实现这类功能。先来看自动添加"http://"头的代码:
自动添加"http://"头的PHP函数代码:
1<?php
2if (!preg_match("/^(http|ftp):/", $_POST['url'])){
3 $_POST['url'] = 'http://'.$_POST['url'];
4}
5?>
PHP将网址字符串转换成超级链接,可将URL和E-mail 地址字符串转换为可点击的超级链接:
01<?php
02function makeClickableLinks($text) {
03 $text = eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_+.~#?&//=]+)',
04 '1', $text);
05 $text = eregi_replace('([[:space:]()[{}])(,
06 '12', $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']="";
3if (!preg_match("/^(http|ftp):/", $_POST['url'])) {
4 $url = 'http://'.$_POST['url'];
5}
6echo makeClickableLinks($url);
7?>
最终效果是把加上了http://,并实现链接的形式。
更多信息请查看IT技术专栏