[PHP警告:mail():"sendmail_from"未在php.ini中设置或自定义"From:"标头丢失

Ika*_*ari 13 php email

我正在尝试使用PHP的mail()函数发送测试邮件.

$to = "****@gourab.me";
$sub = "Php Mail";
$msg = "Test Message From PHP";

mail($to, $sub, $msg, "From: **********@gmail.com");
Run Code Online (Sandbox Code Playgroud)

当我尝试通过stepin 调试它时phpdbg,它显示消息:

[PHP Warning: mail(): " sendmail_from" not set in php.ini or custom "From:" header 
missing in C:/xampp/htdocs/tinyProj/mail.php on line 4]
Run Code Online (Sandbox Code Playgroud)

我不明白为什么?

fil*_*tto 31

看来你的From标题格式不正确.试试这个:

$headers =  'MIME-Version: 1.0' . "\r\n"; 
$headers .= 'From: Your name <info@address.com>' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; 

mail($to, $subject, $body, $headers);
Run Code Online (Sandbox Code Playgroud)

  • 我试过了,但现在 phpdbg 显示`[PHP 警告:mail(): 无法连接到本地主机端口 25 的邮件服务器,请验证 php.ini 中的“SMTP”和“smtp_port”设置或使用 ini_set()` (2认同)

Moh*_*ani 5

兄弟,您似乎正在使用自己的 PC/localhost/127.0.0.1 服务器,这就是您无法连接到 SMTP 服务器的原因。您只能使用类似的编码和一些修改从实时服务器发送邮件:) 即添加一个参数“标题/发件人”。

mail("You@me.com","Answer","Hope You Vote My Answer Up","From: me@you.com");
Run Code Online (Sandbox Code Playgroud)