本文目录一览:
- 1、请问如何用php发送email?
- 2、PHP怎么发邮件,不安装SMTP服务能发吗?
- 3、PHP怎么用POP3来收邮件
- 4、如何把php导出的Excel 作为邮件发送
- 5、Cannot redeclare class phpmailerException什么错
- 6、php里的phpmailer类库,如何发送一个大文件附件?
请问如何用php发送email?
别用php自带的函数 没啥用 用网上的类库
去网上下个 PHPMailer 然后学习下 网上的资料 蛮容易的
PHP怎么发邮件,不安装SMTP服务能发吗?
用 PHPmailer (php开源类库) 可以发送邮件, 不过你还是必须要有SMTP邮件服务器的资源才能发送邮件, 下载包后里面有很详细的使用说明和很多demo.
phpmailer
下载地址:
PHP怎么用POP3来收邮件
给你一个用 PEAR 的类库的例子:
?php
require_once('Net/POP3.php');
$pop3 = new Net_POP3;
$pop3-connect('localhost', 110);
$pop3-login('popuser', 'poppassword', false);
$msgCnt = $pop3-numMsg();
$headers = $pop3-getParsedHeaders($msgCnt);
$from = mb_decode_mimeheader($headers['From']);
$subject = mb_decode_mimeheader($headers['Subject']);
$content = $pop3-getBody($msgCnt);
$pop3-disconnect();
echo "From: $from\n";
echo "Subject: $subject\n";
echo "Body: $content\n";
?
安装类库的命令
pear install Net_Pop3
如何把php导出的Excel 作为邮件发送
1 .生成excel:
header("Content-type:application/octet-stream");
header("Accept-Ranges:bytes");
header("Content-type:application/vnd.ms-excel");
header("Content-Disposition:attachment;filename=".$filename.".xls");
header("Pragma: no-cache");
header("Expires: 0");
if (!empty($title)){
foreach ($title as $k = $v) {
$title[$k]=iconv("UTF-8", "GB2312",$v);
}
$title= implode("\t", $title);
echo "$title\n";
}
if (!empty($data)){
foreach($data as $key=$val){
foreach ($val as $ck = $cv) {
$data[$key][$ck]=iconv("UTF-8", "GB2312", $cv);
}
$data[$key]=implode("\t", $data[$key]);
}
echo implode("\n",$data);
}
2 . 发送邮件:
用了phpmailer类库
$mail = new PHPMailer();
$mail-CharSet = 'UTF-8';
$mail-IsSMTP();
$mail-SMTPAuth = true;
$mail-SMTPSecure = '';
$mail-Host = $config['SMTP_HOST']; // SMTP 服务器
$mail-Port = $config['SMTP_PORT']; // SMTP服务器的端口号
$mail-Username = $config['SMTP_USER']; // SMTP服务器用户名
$mail-Password = $config['SMTP_PASS']; // SMTP服务器密码
$mail-SetFrom($config['FROM_EMAIL'], $config['FROM_NAME']);
$replyEmail = $config['REPLY_EMAIL']?$config['REPLY_EMAIL']:$config['FROM_EMAIL'];
$replyName = $config['REPLY_NAME']?$config['REPLY_NAME']:$config['FROM_NAME'];
$mail-AddReplyTo($replyEmail, $replyName);
$mail-Subject = $subject;
$mail-MsgHTML($body);
$mail-AddAddress($to, $name);
if(is_file($attachment)){ // 添加附件
$mail-AddAttachment($attachment);
}
return $mail-Send()
Cannot redeclare class phpmailerException什么错
你是不是用了两次发送邮件函数,然后引入用的是require,所以第二次实现发送时重复了
php里的phpmailer类库,如何发送一个大文件附件?
电子邮件本身就不支持这么大的附件。
分卷压缩发送出去。
大附件功能其实是把文件上传到云端,然后生成地址,收邮件的人通过地址到云端取回来。