您好,欢迎访问一九零五行业门户网

用MAIL函数发带附件的邮件的例子_PHP

class mime_mail
{
var $parts;
var $to;
var $from;
var $headers;
var $subject;
var $body;
/* * void mime_mail() * class constructor */
function mime_mail()
{
$this->parts = array();
$this->to = ;
$this->from = ;
$this->subject = ;
$this->body = ;
$this->headers = ;
}
/* * void add_attachment(string message, [string name], [string ctype]) * add an attachment
to the mail object */
function add_attachment($message, $name = , $ctype = application/octet-stream)
{
$this->parts[] = array ( ctype => $ctype, message => $message, encode => $encode,
name => $name );
}
/* * void build_message(array part= * build message parts of an multipart mail */
function build_message($part)
{
$message = $part[message];
$message = chunk_split(base64_encode($message));
$encoding = base64;
return content-type: .$part[ctype]. ($part[name]?; name = .$part[name]. : ).
ncontent-transfer-encoding: $encodingnn$messagen;
}
/* * void build_multipart() * build a multipart mail */
function build_multipart()
{
$boundary = b.md5(uniqid(time()));
$multipart = content-type: multipart/mixed; boundary = $boundarynnthis is a mime
encoded message.nn--$boundary;
for($i = sizeof($this->parts)-1; $i >= 0; $i--)
{
$multipart .= n.$this->build_message($this->parts[$i]).--$boundary;
}
return $multipart.= --n;
}
/* * void send() * send the mail (last class-function to be called) */
function send()
{
$mime = ;
if (!empty($this->from))
$mime .= from: .$this->from.n;
if (!empty($this->headers))
$mime .= $this->headers.n;
if (!empty($this->body))
$this->add_attachment($this->body, , text/plain);
$mime .= mime-version: 1.0n.$this->build_multipart();
mail($this->to, $this->subject, , $mime);
}
}; // end of class
/* * example usage *
$attachment = fread(fopen(test.jpg, r), filesize(test.jpg));
$mail = new mime_mail();
$mail->from = foo@bar.com;
$mail->headers = errors-to: foo@bar.com;
$mail->to = bar@foo.com;
$mail->subject = testing...;
$mail->body = this is just a test.;
$mail->add_attachment($attachment, test.jpg, image/jpeg);
$mail->send();
*/
?&g
其它类似信息

推荐信息