Php 在标题中使用变量时不发送电子邮件

Php 在标题中使用变量时不发送电子邮件,php,Php,我正在创建一个联系人表单,由于某种原因,当我在标题中使用变量时,电子邮件不会被发送。 这一个有效: $first_name = (isset($_POST['firstname']) ? $_POST['firstname'] : null); $last_name = (isset($_POST['lastname']) ? $_POST['lastname'] : null); $email = (isset($_POST['email']) ? $_POST['email'] : null

我正在创建一个联系人表单,由于某种原因,当我在标题中使用变量时,电子邮件不会被发送。 这一个有效:

$first_name = (isset($_POST['firstname']) ? $_POST['firstname'] : null);
$last_name = (isset($_POST['lastname']) ? $_POST['lastname'] : null);
$email = (isset($_POST['email']) ? $_POST['email'] : null);
$message = (isset($_POST['message']) ? $_POST['message'] : null);
$mail_to = "MyEmail";
$subject = "Subject";
$headers =  'MIME-Version: 1.0' . "\r\n";
$headers .= 'From: '.$first_name.' '.$last_name.' <info@email.com>' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
mail($mail_to, $subject, $message, $headers)
$first\u name=(isset($\u POST['firstname'])?$\u POST['firstname']:null);
$last_name=(isset($_POST['lastname'])?$_POST['lastname']:null);
$email=(isset($\u POST['email'])?$\u POST['email']:空);
$message=(isset($\u POST['message'])?$\u POST['message']:null);
$mail\u to=“MyEmail”;
$subject=“subject”;
$headers='MIME版本:1.0'。“\r\n”;
$headers.='From:'.$first\u name.'.$last\u name.''。“\r\n”;
$headers.='内容类型:文本/html;字符集=iso-8859-1'。“\r\n”;
邮件($mail\u to、$subject、$message、$headers)
而这个没有

$first_name = (isset($_POST['firstname']) ? $_POST['firstname'] : null);
$last_name = (isset($_POST['lastname']) ? $_POST['lastname'] : null);
$email = (isset($_POST['email']) ? $_POST['email'] : null);
$message = (isset($_POST['message']) ? $_POST['message'] : null);
$mail_to = "MyEmail";
$subject = "Subject";
$headers =  'MIME-Version: 1.0' . "\r\n";
$headers .= 'From: '.$first_name.' '.$last_name.' <'.$email.'>'."\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
mail($mail_to, $subject, $message, $headers)
$first\u name=(isset($\u POST['firstname'])?$\u POST['firstname']:null);
$last_name=(isset($_POST['lastname'])?$_POST['lastname']:null);
$email=(isset($\u POST['email'])?$\u POST['email']:空);
$message=(isset($\u POST['message'])?$\u POST['message']:null);
$mail\u to=“MyEmail”;
$subject=“subject”;
$headers='MIME版本:1.0'。“\r\n”;
$headers.='From:'.$first\U name.'.$last\U name.'.'。“\r\n”;
$headers.='内容类型:文本/html;字符集=iso-8859-1'。“\r\n”;
邮件($mail\u to、$subject、$message、$headers)
我说的是这些台词:

$headers .= 'From: '.$first_name.' '.$last_name.' <info@email.com>'."\r\n";
$headers .= 'From: '.$first_name.' '.$last_name.' <'.$email.'>'."\r\n";
$headers.='From:'.$first\u name.'.$last\u name.''.\r\n“;
$headers.='From:'.$first\U name.'.$last\U name.'.'。“\r\n”;

在我将电子邮件变量添加到标题中之前,这是有效的,有人能解释一下我做错了什么吗?

尝试将变量放入您的姓名中

下一个调用端口。。。非常感谢,我没有想到。你能详细说明一下吗,因为我不太明白你的意思