php 去掉img,php正则取img标记中任意属性(正则替换去掉或改变图片img标记中的任意属性)...

因有一项目新闻发布系统,数据库内容字段中存储的是原图的路径(当然还有其他文字内容啦,内容里插图时,存的是图片路径),但前台想使用缩略图,琢磨1小时余,得到以下结果,可解决问题(取img标签会了,取别的标签任意属性自然也会了):

/*正则取图片img标记中的任意属性*/

$word = '

111 22

aaa.jpg
中国人
';

//取整个图片代码

preg_match('/]*?src/s*=/s*(/'|/")(.*?)//1[^>]*?//?/s*>/i',$word,$matches);

echo $matches[0];//结果:aaa.jpg

$word = '

111 22

aaa.jpg
中国人
';

//取width

preg_match('//i',$word,$matches);

echo $matches[1];

//取height

preg_match('//i',$word,$matches);

echo $matches[1];

//取src

preg_match('//i',$word,$matches);

echo $matches[1];

/*正则替换去掉或改变图片img标记中的任意属性***************************************************************/

$str = '

111 22

aaa.jpg
中国人

31313 224344

bbb.jpg
1212121
';

//改变src属性(此处将原来的src="/upload/images/bbb.jpg"改变为src="/upload/_thumbs/Images/bbb.jpg")

print preg_replace('/()/i',"/${1}_thumbs/Images//${3}",$str);

/*改变src属性,

此处将原来的src="/upload/images/bbb.jpg"改变为src="/upload/_thumbs/Images/bbb.jpg",并舍弃宽和高

(比如你想在前台显示缩略图,但数据库中存储的是原图的路径。为什么要舍弃宽高??你缩略图啊!还是原图的宽高,会怎样???)

*/

print preg_replace('/(/i',"/${1} /${2}_thumbs/Images//${3}>",$str);

?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值