用户提交的表单里面有网址,是不带HTTP的那种,我想自动添加http并给网站添加超链接,让其可以点击打开,PHP代码应该怎么写呢?
这个可以分2步,第一步先添加http,然后再添加超链接,下面青岛星网给出范例代码参考。
<?php if (!preg_match("/^(http|ftp):/", $_POST['url'])){ $_POST['url'] = 'http://'.$_POST['url']; } ?>
<?php function makeClickableLinks($text) { $text = eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_+.~#?&//=]+)', '<a href="\1">\1</a>', $text); $text = eregi_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_+.~#?&//=]+)', '\1<a href="http://\2">\2</a>', $text); $text = eregi_replace('([_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3})', '<a href="mailto:\1">\1</a>', $text); return $text; } ?>
<?php $_POST['url']="www.qdxw.net"; if (!preg_match("/^(http|ftp):/", $_POST['url'])) { $url = 'http://'.$_POST['url']; } echo makeClickableLinks($url); ?>
最终效果是把www.qdxw.net加上了http://,并实现链接的形式。