首先修改php.ini启用mail函数并配置SMTP,再通过Fake Sendmail或PHPMailer实现邮件发送,最后用测试脚本验证功能。

如果您尝试在PHP环境中发送邮件,但无法成功投递,则可能是由于PHP的邮件功能未正确配置。以下是启用PHP邮件功能并配置SMTP发送邮件的步骤:
本文运行环境:Dell XPS 13,Windows 11
一、修改php.ini文件启用mail函数
PHP默认使用mail()函数发送邮件,该功能依赖于php.ini中的配置项。需要确保相关设置已开启并指向正确的邮件传输代理。
1、找到php.ini文件所在位置,可通过phpinfo()函数查看其路径。
立即学习“PHP免费学习笔记(深入)”;
2、使用文本编辑器打开php.ini文件。
3、查找[mail function]部分。
4、确保extension=php_openssl.dll和extension=php_sockets.dll未被注释(即前面无分号)。
二、配置本地sendmail或使用外部SMTP服务
Windows系统通常不自带邮件发送服务,因此需通过模拟工具如Fake Sendmail或直接配置外部SMTP服务器来实现邮件发送。
1、下载并安装Fake Sendmail for Windows工具包。
2、解压后将sendmail目录放置于PHP安装根目录下。
3、编辑sendmail\sendmail.ini文件。
4、设置smtp_server为第三方SMTP服务器地址,例如smtp.gmail.com。
5、设置smtp_port=587,并配置auth_username与auth_password。
6、在php.ini中设置sendmail_path = "C:\php\sendmail\sendmail.exe -t",路径需根据实际安装位置调整。
三、使用PHPMailer库配置SMTP发送邮件
PHPMailer提供了更稳定且功能丰富的SMTP邮件发送方式,支持SSL/TLS加密连接,适用于主流邮箱服务商。
1、通过Composer安装PHPMailer:composer require phpmailer/phpmailer。
琅琅配音 全能AI配音神器
89 查看详情
2、创建一个PHP脚本文件,引入autoload文件。
3、实例化PHPMailer对象,并设置$mail->isSMTP()以启用SMTP模式。
4、设置$mail->Host为SMTP服务器地址,如smtp.163.com。
5、启用身份验证:$mail->SMTPAuth = true; 并设置用户名与密码。
6、设置加密方式:$mail->SMTPSecure = 'tls'; 端口设置为587。
7、设置发件人邮箱和名称:$mail->setFrom('your_email@163.com', 'Your Name');。
8、添加收件人:$mail->addAddress('recipient@example.com');。
9、设置邮件主题和正文内容。
10、调用$mail->send()方法发送邮件,并用try-catch捕获异常。
四、测试邮件发送功能
完成配置后,应编写简单的测试脚本验证邮件是否能正常发出。
1、创建test_mail.php文件。
2、使用mail()函数进行基础测试:mail('test@example.com', 'Test Subject', 'This is a test email.');。
3、运行脚本,检查目标邮箱是否收到邮件。
4、若失败,查看PHP错误日志,确认是否有SMTP连接或认证错误信息。
以上就是php配置如何启用邮件功能_php配置SMTP发送邮件的步骤的详细内容,更多请关注php中文网其它相关文章!



