php发送带附件的邮件

这个有点复杂,我们先建立两个文件,一个a.php,一个test.txt直接上代码吧,试试就会了

test.txt随便写点内容主要是为了区分这个附件是不是自己的

a.php写入下面

<?php
$boundary= md5(uniqid(""));//分隔符
$headers = 'From: ylx123456@gmail.com' . "\r\n";
$headers   .= "Mime-Version: 1.0 \r\n";
$headers   .= "Content-Type : multipart/mixed;boundary=\"".$boundary."\"\r\n";
$headers   .= "--$boundary\r\n";
$headers   .= "Content-type: text/html; charset=gb2312\r\n";
$file = "./test.txt";
$fd = fopen($file,"r");
$contents   = chunk_split(base64_encode(fread($fd,filesize($file))));
fclose($fd);

$message   = "--$boundary\n";
$message   .= "Content-type: text/plain; charset=iso-8859-1\n";
$message   .= "Content-Transfer-Encoding: 8bit\n";
$message   .= $contents;
$message   .= "--$boundary\n";
$message   .= "Content-Type: ".mime_content_type($file)."; name=\"test.txt\" \n";
$message   .= "Content-Disposition: attachment;   filename=\"test.txt\"\n\n";
$message   .= "测试邮件附件\n\n";

$message   .=   "--$boundary--\n";

$to = "277901680@qq.com";
$subject = "测试邮件 带附件";
var_dump(mail($to, $subject, $message, $headers));

然后运行下php a.php看看自己有没有收到邮件,当然要把这里头的邮箱改下

本文固定链接: http://www.qaforcode.net/archives/579 | 猪哥每日一贴

该日志由 趴在树上的猪 于2012年12月24日发表在 php 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: php发送带附件的邮件 | 猪哥每日一贴
关键字: , ,

php发送带附件的邮件:等您坐沙发呢!

发表评论


快捷键:Ctrl+Enter

浙公网安备 33010602001905号