有没有办法将图像附加到用PHP创建的html格式的电子邮件中?
我们需要确保在发送给可能在阅读电子邮件时无法访问Internet的客户的电子邮件上带有公司徽标(显然,他们可以下载文件)。
尝试使用PEARMail_Mime软件包,该软件包可以为您嵌入图像。
您需要使用addHTMLImage()方法并传递内容ID(cid),这是一个唯一的文本字符串,您还将在img的src属性中将其用作cid:URL。例如:
cid:
include('Mail.php'); include "Mail/mime.php"; $crlf = "\r\n"; $hdrs = array( 'From' => 'foo@bar.org', 'Subject' => 'Mail_mime test message' ); $mime = new Mail_mime($crlf); //attach our image with a unique content id $cid="mycidstring"; $mime->addHTMLImage("/path/to/myimage.gif", "image/gif", "", true, $cid); //now we can use the content id in our message $html = '<html><body><img src="cid:'.$cid.'"></body></html>'; $text = 'Plain text version of email'; $mime->setTXTBody($text); $mime->setHTMLBody($html); $body = $mime->get(); $hdrs = $mime->headers($hdrs); $mail =& Mail::factory('mail'); $mail->send('person@somewhere.org', $hdrs, $body);