不积跬步无以至千里

记录精彩的程序人生

  • 首页
  • Java
  • Golang
  • PHP
  • Python
  • Nodejs
  • Lua
  • Docker
  • DevOps
  • 文章归档
  • 默认分类
  • 关于
  • 标签

  • 搜索
PostgreSQL hbase 时间同步 nexus 开机启动 nexus, 开机启动 jenkins安装配置 gitlab安装配置 gitlab安装 文件系统 fastdfs gcc切换 gcc升级 mysql8 交换空间 虚拟内存 tcp thrift lua tag test VPN SoftEtherVPN homebrew asm spring tomcat maven jdk ios mac 图案字符 figlet mysql半同步复制 mysql主从同步 一主多从 一主一从 主从同步 反向代理 密码重置 test 虚拟机扩容 swap 虚拟空间 docker ldocker grpc-gateway protobuf 微服务 go grp GRPC 授权登录 OAuth2.0 SOA supervisord supervisor RPC CentOS rabbitmq 环境变量 php-fpm php.ini error php7 lnmp 编译安装 mysql nginx linux java php python redis 字符串操作 mysql5.7 Solo

php中用phpmailer发送邮件

发表于 2020-10-03 | 分类于 默认分类 | 0 | 阅读次数 1318

在php中提供了一个发送邮件的函数mail函数,它可以在程序中直接发送电子邮件,不过它要求服务器支持sendmail

或者必须设置一台不需要中继的邮件发送服务器,但现在要找到一台不需要身份验证的邮件发送中继几乎不可能。

所以使用mail函数往往无法成功发送email.

自己如果熟悉SMTP协议,结合socket功能就可以编写高效稳定的邮件发送程序,但对一般用户来说太困难。好在互联网上已经有很多别人编写好的邮件发送模块,我们只需要下载后简单调用即可,十分方便。

在此我们给用户推荐一个php下功能十分强大,易用且免费的SMTP类模块-PHPMailer,

PHPMailer是一个用于发送电子邮件的PHP函数包。它提供的功能包括:

*.在发送邮时指定多个收件人,抄送地址,暗送地址和回复地址

*.支持多种邮件编码包括:8bit,base64,binary和quoted-printable

*.支持SMTP验证

*.支持冗余SMTP服务器

*.支持带附件的邮件和Html格式的邮件

*.自定义邮件头

*.支持在邮件中嵌入图片

*.调试灵活

*.经测试兼容的SMTP服务器包括:Sendmail,qmail,Postfix,Imail,Exchange等

*.可运行在任何平台之上

下载该组件后,按如下示例编写代码即可实现php在线发送邮件。

一:html程序<html>

<body>

<h3>phpmailer Unit Test</h3>

请你输入<font color="#FF6666">收信</font>的邮箱地址:

<form name="phpmailer" action="send.php" method="post">

<input type="hidden" name="submitted" value="1"/>

邮箱地址: <input type="text" size="50" name="address" />

<br/>

<input type="submit" value="发送"/>

</form>

</body>

</html>

二:PHP程序<?php

require("class.phpmailer.php"); //下载的文件必须放在该文件所在目录

$mail = new PHPMailer(); //建立邮件发送类

$address = $_POST['address'];

$mail->IsSMTP(); // 使用SMTP方式发送

$mail->Host = "mail.xxxxx.com"; // 您的企业邮局域名

$mail->SMTPAuth = true; // 启用SMTP验证功能

$mail->Username = "user@xxxx.com"; // 邮局用户名(请填写完整的email地址)

$mail->Password = "******"; // 邮局密码

$mail->From = "user@xxxx.com"; //邮件发送者email地址

$mail->FromName = "您的名称";

$mail->AddAddress("$address", "");//收件人地址,可以替换成任何想要接收邮件的email信箱,格式是AddAddress("收件人email","收件人姓名")

//$mail->AddReplyTo("", "");

//$mail->AddAttachment("/var/tmp/file.tar.gz"); // 添加附件

//$mail->IsHTML(true); // set email format to HTML //是否使用HTML格式

$mail->Subject = "PHPMailer测试邮件"; //邮件标题

$mail->Body = "Hello,这是测试邮件"; //邮件内容

$mail->AltBody = "This is the body in plain text for non-HTML mail clients"; //附加信息,可以省略

if(!$mail->Send())

{

echo "邮件发送失败。 <p>";

echo "错误原因: " . $mail->ErrorInfo;

exit;

}

echo "邮件发送成功";

?>

PHPer谈实现MVC模式思想
php高级程序员如何度过面试关
  • 文章目录
  • 站点概览
ken

ken

记录精彩的程序人生

498 日志
9 分类
77 标签
RSS
Creative Commons
Links
  • 酷壳
0%
© 2010 — 2025 ken
由 Halo 强力驱动
鄂ICP备18013899号-1