使用gmail(windows)从localhost发送电子邮件

2022-08-31 01:14:49

我想使用本地主机中的mail()函数。我安装了WAMP和Gmail帐户。我知道Gmail的SMTP是 smtp.gmail.com,端口是465。我需要在WAMP中配置什么才能使用mail()功能?谢谢


答案 1

Ayush的答案非常有用,在稍微简化的方法
下面1)下载PHPMailer
2)提取到php项目中的文件夹并将其重命名为phpmailer
3)创建gmail-sample.php并粘贴以下代码:

    <?php
    require("phpmailer/class.phpmailer.php");
    $mail = new PHPMailer();

    // ---------- adjust these lines ---------------------------------------
    $mail->Username = "your.username@gmail.com"; // your GMail user name
    $mail->Password = "your-gmail-password"; 
    $mail->AddAddress("friends.email@domain.com"); // recipients email
    $mail->FromName = "your name"; // readable name

    $mail->Subject = "Subject title";
    $mail->Body    = "Here is the message you want to send to your friend."; 
    //-----------------------------------------------------------------------

    $mail->Host = "ssl://smtp.gmail.com"; // GMail
    $mail->Port = 465;
    $mail->IsSMTP(); // use SMTP
    $mail->SMTPAuth = true; // turn on SMTP authentication
    $mail->From = $mail->Username;
    if(!$mail->Send())
        echo "Mailer Error: " . $mail->ErrorInfo;
    else
        echo "Message has been sent";
    ?>

4)从浏览器发送邮件(例如 http://localhost/your-project/gmail-sample.php)。


答案 2

我曾经得到“SMTP错误:无法连接到SMTP主机”。

此错误是由于 XAMPP (1.7.7) 及其 Apache 服务器造成的,默认情况下未启用其“SSL”选项。因此,我们必须自己启用它。

怎么办?在 XAMPP 的 PHP.ini 文件中,必须添加以下扩展名(未写入也未注释):extension=php_openssl.dll

保存php.ini文件,重新启动apache服务器,然后....享受它!

就个人而言,它适用于:
Port = 465
Host = smtp.gmail.com
SMTPAuth = true
SMTPDebug = 1
SMTPSecure = 'ssl'


推荐