阅读量:0
PHP邮件发送主要有两种方法:使用PHP的内置函数mail()
和使用第三方库PHPMailer。
- 使用PHP的内置函数
mail()
:
mail()
函数是PHP中用于发送邮件的内置函数。它不需要额外的库支持,但功能相对有限。以下是使用mail()
函数发送邮件的基本步骤:
$to = "recipient@example.com"; $subject = "邮件主题"; $message = "邮件内容"; $headers = "From: sender@example.com" . "\r\n" . "Reply-To: sender@example.com" . "\r\n" . "X-Mailer: PHP/" . phpversion(); if(mail($to, $subject, $message, $headers)) { echo "邮件发送成功"; } else { echo "邮件发送失败"; }
- 使用第三方库PHPMailer:
PHPMailer是一个功能强大的第三方邮件发送库,支持多种邮件协议(如SMTP、sendmail、QQ邮箱等)和邮件服务提供商。以下是使用PHPMailer发送邮件的基本步骤:
首先,通过Composer安装PHPMailer:
composer require phpmailer/phpmailer
然后,使用以下代码发送邮件:
<?php use PHPMailer\PHPMailer\PHPMailer; use PHPMailer\PHPMailer\Exception; require 'vendor/autoload.php'; $mail = new PHPMailer(true); try { // 服务器设置 $mail->isSMTP(); // 使用SMTP $mail->Host = 'smtp.example.com'; // SMTP服务器地址 $mail->SMTPAuth = true; // 启用SMTP认证 $mail->Username = 'your_username'; // SMTP用户名 $mail->Password = 'your_password'; // SMTP密码 $mail->SMTPSecure = 'tls'; // 启用TLS加密 $mail->Port = 587; // SMTP端口 // 发件人和收件人 $mail->setFrom('sender@example.com', 'Sender Name'); $mail->addAddress('recipient@example.com', 'Recipient Name'); // 收件人邮箱 // 邮件内容 $mail->isHTML(true); // 设置邮件格式为HTML $mail->Subject = '邮件主题'; $mail->Body = '邮件内容'; $mail->send(); echo '邮件发送成功'; } catch (Exception $e) { echo "邮件发送失败。Mailer Error: {$mail->ErrorInfo}"; } ?>
这两种方法都可以实现PHP邮件发送,但PHPMailer提供了更多的功能和更好的兼容性,因此推荐使用PHPMailer。