批量替换<img>标签为PHPmailer显示格式
浏览:2631次 出处信息
用到PHPmailer,正文中插入图片用
$mail-> AddEmbeddedImage($matches[1][0],"img_01 ","index_01.jpg ");
来调用,但是在邮件中显示的时候必须要<img src="cid:img_01">这么引用一下,这里的cid是img_0,为了能按照看图说话的样式来发送邮件,所以得把web应用中POST过来的img标签给替换成<img src="cid:img_01">这样的格式再发送。
<?
$a= '<p>1111111111111111111111111111111111111111111111</p>
<p><img width="640" height="360" src="/hixy7/image/blog2.JPG" alt="" /></p>
<p>2222222222222222222222222222222222222222222222222</p>
<p><img width="220" height="216" src="/hixy7/2_59608414_diary.gif" alt="" /></p>
<p>333333333333333333333333333333333333333333333333333333</p>
<p><img width="634" height="354" src="/hixy7/image/bai_music.jpg" alt="" /></p>
<p>44444444444444444444444444444444444444444444444</p>
<p><img width="824" height="500" src="/hixy7/image/blog_music.JPG" alt="" /></p>
<p>5555555555555555555555555555555555555555555555555555555555555555555555</p>
<p><img width="640" height="360" src="/hixy7/image/aaa.JPG" alt="" /></p>';
preg_match_all('/<img.+src=\"?(.+\.(jpg|gif|bmp|png))\".+\"?\/>/i',$a,$matches);
//var_dump($matches);
$replacements[0] = "img src=\"cid:img_01\"";
$replacements[1] = "img src=\"cid:img_02\"";
$replacements[2] = "img src=\"cid:img_03\"";
$replacements[3] = "img src=\"cid:img_04\"";
$replacements[4] = "img src=\"cid:img_05\"";
var_dump((preg_replace($matches[0],$replacements,$a)));
?>
这里偷了个懒,利用preg_replace的一个特点把<>补全了……
建议继续学习:
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
扫一扫订阅我的微信号:IT技术博客大学习
<< 前一篇:var_export函数一个需要注意的地方
后一篇:php.ini安全配置及使用说明 >>
文章信息
- 作者:4pplem0n 来源: /*旋木木*/的后街
- 标签: PHPmailer
- 发布时间:2010-06-12 17:48:30
近3天十大热文
-
[82] memory prefetch浅析
-
[53] 转载:cassandra读写性能原理分析
-
[51] 深入浅出cassandra 4 数据一致性问
-
[50] 基本排序算法的PHP实现
-
[46] 字符引用和空白字符
-
[42] Inline Form Labels
-
[41] JS中如何判断字符串类型的数字
-
[41] MySQL半同步存在的问题
-
[41] 获取Dom元素的X/Y坐标
-
[40] javascript插入样式