Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用php发送的邮件';s mail()的“发件人”字段为空_Php_Email - Fatal编程技术网

用php发送的邮件';s mail()的“发件人”字段为空

用php发送的邮件';s mail()的“发件人”字段为空,php,email,Php,Email,我用PHP的邮件功能发送电子邮件。 它的工作原理和它应该的一样,除了所有的电子邮件客户端都显示空白字段。 下面是我如何使用该函数的: mail( 'mail@example.com', 'Example subject', $msg, implode( '\r\n', array( 'Content-Type: text/html; charset=UTF-8', 'From: test@example.com') ) ); 正如我所说的,当消息到达时,除了“从”字段外,所有内

我用PHP的邮件功能发送电子邮件。 它的工作原理和它应该的一样,除了所有的电子邮件客户端都显示空白字段。 下面是我如何使用该函数的:

mail( 'mail@example.com', 'Example subject', $msg, 
       implode( '\r\n', array( 'Content-Type: text/html; charset=UTF-8', 'From: test@example.com') ) );
正如我所说的,当消息到达时,除了“从”字段外,所有内容都可以正常工作。
知道为什么会这样吗

您的“内容类型”前面缺少了一个引号,并且可能错误日志记录被关闭,因此它忽略了问题,并且对解析代码感到困惑

应该是:

mail( 'mail@example.com', "Example subject", $msg, 
       implode( "\r\n", array( 'Content-Type: text/html; charset=UTF-8', 'From: test@example.com') ) );
试试这个

<?php
$to      = 'nobody@example.com';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: webmaster@example.com' . "\r\n" .
    'Reply-To: webmaster@example.com' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();

mail($to, $subject, $message, $headers);
?>

反对你的想法 检查一下你得到的



此代码将产生解析错误。你能给我看一个真实的代码吗?啊,是的,很抱歉我不得不编辑一下。你知道的秘密内容。)现在应该可以工作了那么,这个编辑过的代码的结果是什么呢?试着执行邮件外内爆函数并将其保存为一个变量,然后告诉我们邮件函数“\r\n”中的变量将不起作用,你必须将其放入“\r\n”中,因此它会进行插值。这确实可以工作,但我仍然无法理解为什么我的版本不包含From header?我也尝试添加X-Mailer和回复邮件头,但在已发送的电子邮件中仍然没有“发件人”字段。尝试执行“邮件外内爆”功能并将其保存为一个变量,然后在邮件功能中使用该变量。您是否在邮件功能中为“内爆”使用了单独的变量?这是我得到的:内容类型:text/html;字符集=UTF-8,来自:test@example.com
  <?php 
    $implode =implode( "\r\n", array( 'Content-Type: text/html; charset=UTF-8', 'From: test@example.com') );

    echo "<pre>";
    print_r($implode);
    ?>