Laravel邮件中的“回复”字段无效

时间:2014-02-07 16:56:24

标签: php email laravel

我需要帮助来弄清楚如何在reply-to中设置app/config/mail.php字段。我正在使用Laravel 4而且它不起作用。这是我的app/config/mail.php

<?php

return array(
    'driver' => 'smtp',
    'host' => 'smtp.gmail.com',
    'port' => 587,
    'from' => [
        'address' => 'sender@domain.com',
        'name' => 'E-mail 1'
    ],
    'reply-to' => [
        'address' => 'replyto@domain.com',
        'name' => 'E-mail 2'
    ],
    'encryption' => 'tls',
    'username' => 'sender@domain.com',
    'password' => 'pwd',
    'pretend' => false,
);

3 个答案:

答案 0 :(得分:59)

很确定它不会这样。您可以在配置文件中设置“From”标题,但在发送期间传递其他所有内容:

Mail::send('emails.welcome', $data, function($message)
{
    $message->to('foo@example.com', 'John Smith')
        ->replyTo('reply@example.com', 'Reply Guy')
        ->subject('Welcome!');
});

FWIW,传递给回调的$messageIlluminate\Mail\Message的一个实例,因此您可以在其上调用各种方法:

  • - &gt; from($ address,$ name = null)
  • - &gt;发件人($ address,$ name = null)
  • - &GT; ReturnPath这样($地址)
  • - &gt; to($ address,$ name = null)
  • - &gt; cc($ address,$ name = null)
  • - &gt; bcc($ address,$ name = null)
  • - &gt; replyTo($ address,$ name = null)
  • - &GT受试者($主题)
  • - &GT;优先级($级)
  • - &gt; attach($ file,array $ options = array())
  • - &gt; attachData($ data,$ name,array $ options = array())
  • - &GT;嵌入($文件)
  • - &gt; embedData($ data,$ name,$ contentType = null)

另外,还有一个神奇的__call方法,因此您可以运行通常在底层SwiftMailer类上运行的任何方法。

答案 1 :(得分:14)

自从Laravel 5.3添加全局回复以来,这是可能的。在config / mail.php文件中添加以下内容:

'reply_to' => [
    'address' => 'info@xxxxx.com',
    'name' => 'Reply to name',
],

答案 2 :(得分:0)

我正在使用mailable,并且在构建函数的App \ Mail \ NewUserRegistered :: class中,我正在使用

public function build()
    {
        return $this->replyTo('email', $name = 'name')
                ->markdown('emails.admin_suggestion');
    }