我的2016 macbook pro上安装了xampp 7.1。我的源文件夹中有一个php联系人表单,由chrome和我的html成功呈现。但是,我需要配置smtp设置以从我的mac本地测试一些功能。
我在xampp etc文件夹中找到了一个包含一些邮件功能的php.ini。
我发现其他文章引用了phpmailer但是因为它们已经有几年了,我认为xamp的较新版本可能具有内置的所有功能。
我可以修改此php.ini文件以使用Gmail邮箱作为收件人吗?怎么样?
提前致谢
这是邮件功能的复制粘贴:
[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP=smtp.gmail.com
; http://php.net/smtp-port
smtp_port=25
; For Win32 only.
; http://php.net/sendmail-from
;sendmail_from = me@example.com
; For Unix only. You may supply arguments as well (default: "sendmail
-t -i").
; http://php.net/sendmail-path
;sendmail_path =
; Force the addition of the specified parameters to be passed as extra
parameters
; to the sendmail binary. These parameters will always replace the
value of
; the 5th parameter to mail(), even in safe mode.
;mail.force_extra_parameters =
; Add X-PHP-Originating-Script: that will include uid of the script
followed by the filename
mail.add_x_header=On
; Log all mail() calls including the full path of the script, line #,
to address and headers
;mail.log =
答案 0 :(得分:0)
如果你要做的是从你的应用服务器发送邮件到你自己的Gmail收件箱,你不必修改这些设置;使用PHPMailer
是一种更简单的方法。让我们一步一步开始吧。
XOAUTH2
;归功于@Synchro。 下载PHPMailer
并将PHPMailer.php
,SMTP.php
和Exception.php
提取到您的xampp/htdocs
文件夹
撰写示例发送邮件页面send.php
:(修改为您的真实帐户)
<?php
require_once('SMTP.php');
require_once('PHPMailer.php');
require_once('Exception.php');
use \PHPMailer\PHPMailer\PHPMailer;
use \PHPMailer\PHPMailer\Exception;
$mail=new PHPMailer(true); // Passing `true` enables exceptions
try {
//settings
$mail->SMTPDebug=2; // Enable verbose debug output
$mail->isSMTP(); // Set mailer to use SMTP
$mail->Host='smtp.gmail.com';
$mail->SMTPAuth=true; // Enable SMTP authentication
$mail->Username='YourAccount@gmail.com'; // SMTP username
$mail->Password='YourPassword'; // SMTP password
$mail->SMTPSecure='ssl';
$mail->Port=465;
$mail->setFrom('sender@whatever.com', 'optional sender name');
//recipient
$mail->addAddress('YourAccount@gmail.com', 'optional recipient name'); // Add a recipient
//content
$mail->isHTML(true); // Set email format to HTML
$mail->Subject='Here is the subject';
$mail->Body='This is the HTML message body <b>in bold!</b>';
$mail->AltBody='This is the body in plain text for non-HTML mail clients';
$mail->send();
echo 'Message has been sent';
}
catch(Exception $e) {
echo 'Message could not be sent.';
echo 'Mailer Error: '.$mail->ErrorInfo;
}
?>
send.php
的网址以发送示例电子邮件PHPMailer
的位置,然后您应该修改示例代码中的路径以指向它们所在的新位置。