您当前的位置: 首页 > 学无止境 > 网站建设 网站首页网站建设
php发送邮件实例-sendmail
发布时间:2015-07-13 09:50:33编辑:雪饮阅读()
php发送邮件不在繁琐,雪饮个人博客在这里教大家如何轻装上阵。
当使用php来发送邮件的时候我们首先会联想到mail函数,这个函数是php内置的发送邮件函数。PHP发送邮件是“非常的简单” 因为他提供了mail()函数直接发送。但这里所说的“非常简单”只是该mail函数语法简单而已,其对于服务器的配置是非常繁琐的。服务器配置必须满足:
mail函数需要配置php.ini邮件信息
mail函数需要类似sendmail组件支持
某些版本的linux自带sendmail类似组件支持
既然mail函数如此复杂,何不使用一个类将其封装?不错国外就有这样一个封装好的邮箱发送类,我们只需要获得它包含并使用即可。
下面是具体的案例源代码:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
</head>
<body>
<?
//显示除去 E_NOTICE 之外的所有错误信息
//; E_NOTICE - 运行时提醒(这些经常是是你的代码的bug引起的,
ini_set("error_reporting","E_ALL & ~E_NOTICE");
require_once ('email.class.php');
//##########################################
$smtpserver = "smtp.163.com";//发送者SMTP服务器地址
$smtpserverport =25;//发送者SMTP服务器端口
$smtpusermail = "";//发送者SMTP服务器的用户邮箱(带@xx.com)
$smtpemailto = "";//发送给谁(目标用户邮箱地址)
$smtpuser = "";//发送者SMTP服务器的用户帐号(不带@xx.com)
$smtppass = "";//发送者SMTP服务器的用户密码
$mailsubject = "雪饮个人博客测试邮件系统";//邮件主题(标题)
$mailbody = "<h1> 这是一个测试程序www.gaojiupan.cn </h1>";//邮件内容
$mailtype = "HTML";//邮件格式(HTML/TXT),TXT为文本邮件,邮件类型
##########################################
$smtp = new smtp($smtpserver,$smtpserverport,true,$smtpuser,$smtppass);//这里面的一个true是表示使用身份验证,否则不使用身份验证.
$smtp->debug =FALSE;//是否显示发送的调试信息
if(@mail("1509272975@qq.com","邮件的标题","邮件的内容")){
echo "支持mail函数的邮件发送方式";
}
else{
$smtp->sendmail($smtpemailto, $smtpusermail, $mailsubject, $mailbody, $mailtype);
}
?>
</body>
</html>
在这里值得注意的是:我们必须保证该案例源代码编码为gbk编码,若是utf-8在发送邮件的时候标题由于是乱码的所以会被视作垃圾邮件而被退回。
下面是案例的完整源代码下载:
关键字词:sendmail,邮件,个人博客