请选择 进入手机版 | 继续访问电脑版

 找回密码
 注册

只需一步,快速开始

蓝色理想 最新研发动态 用悬赏 三天解决问题 解决访问速度慢 论坛支持农历生日 - 给官方提建议

论坛活动及任务 归纳网站最新活动 地图任务 邮件更新任务:保护帐号安全

万元奖励等你拿——点点网模板设计大赛 第一季积分兑换活动 联系招聘客服 蓝色理想帮你找工作!

查看: 209|回复: 3

[php] 不懂正则表达式,请求一个把文本中的URL输出<a herf>超链接的函数 [复制链接]

iloveleeyan 楼主
帖子
10
体力
47
威望
0
居住地
广东省 广州市
发表于 2011-11-13 18:15:42 |显示全部楼层
如题,我是上网搜索了很多,是有一些现成的代码,但是我试验过,那些会报错,听说在新版本的PHP中都不支持旧的替代函数
如会报错 Deprecated: Function eregi_replace() is deprecated
求大家给一个,谢谢啊~

从聆开始~

蓝蓝的闪客

管理员  

帖子
23159
体力
39267
威望
187
居住地
湖南省 长沙市
发表于 2011-11-14 13:06:42 |显示全部楼层
5.3 版本以后不能用,你可以在5.3版本以前跑。

另外,你可以用 preg_replace 这个更好。
腾讯微博 新浪微博 网站微博 只要集中精力,五年成专家,十年成权威,十五年成世界顶尖。
iloveleeyan 楼主
帖子
10
体力
47
威望
0
居住地
广东省 广州市
发表于 2011-11-14 20:02:45 |显示全部楼层
蓝色 发表于 2011-11-14 13:06
5.3 版本以后不能用,你可以在5.3版本以前跑。

另外,你可以用 preg_replace 这个更好。

那不知道能不能完全替代原来的那个函数呢?直接替代后拿来用
从聆开始~
iloveleeyan 楼主
帖子
10
体力
47
威望
0
居住地
广东省 广州市
发表于 2011-11-14 20:23:19 |显示全部楼层
蓝色 发表于 2011-11-14 13:06
5.3 版本以后不能用,你可以在5.3版本以前跑。

另外,你可以用 preg_replace 这个更好。
  1. function autolink($text) {
  2. $text = eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_+.~#?&//=]+)', '<a href="\1">\1</a>', $text);
  3. $text = eregi_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_+.~#?&//=]+)','\1<a href="http://\2">\2</a>', $text);
  4. $text = eregi_replace('([_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3})', '<a href="mailto:\1">\1</a>', $text);
  5. return $text;
  6. }
复制代码
我就是用这个的,不知道怎么改好
从聆开始~
您需要登录后才可以回帖 登录 | 注册

Archiver|手机版|安久科技提供CDN|blueidea.com ( 京ICP备05002321号 )  

GMT+8, 2012-1-21 11:24 , Processed in 0.103202 second(s), 10 queries , Gzip On, Memcache On.

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部