Yii2电子邮件如何设置发件人姓名

dun*_*uan 3 yii2

我使用Mailer发送电子邮件,所以我有关于发件人姓名的问题这是我的配置

    'mailer' => [
        'class' => 'yii\swiftmailer\Mailer',
        'useFileTransport' => false,
        'messageConfig' => [
            'charset' => 'UTF-8',
            'from' => ['admin@app.com' => 'App Sender Name'],
        ],
        'transport' => [
            'class' => 'Swift_MailTransport',
        ],
    ],
Run Code Online (Sandbox Code Playgroud)

所以它不起作用.我转到收件箱,只有电子邮件显示. 在此输入图像描述

我需要显示为示例: 在此输入图像描述

dun*_*uan 5

它更新setFrom()方法时工作.例如:$ mailer-> setFrom(['email@app.com'=>'App Name']).这里是配置Yii2,用于通过PHP邮件和发件人名称发送

'mailer' => [
        'class' => 'yii\swiftmailer\Mailer',
        'useFileTransport' => false,
        'messageConfig' => [
            'charset' => 'UTF-8',
            'from' => ['admin@app.com' => 'App Sender Name'],
        ],
        'transport' => [
            'class' => 'Swift_MailTransport',
        ],
    ],
Run Code Online (Sandbox Code Playgroud)

并发送电子邮件

   Yii::$app->mailer->compose()
    ->setTo('client@email.com')
    ->setFrom(['admin@app.com' => 'App Name'])
    ....
Run Code Online (Sandbox Code Playgroud)


Tha*_*gTD 0

yii2 中的每个组件和子组件都可以通过依赖注入进行配置,这种情况是相同的,例如:

        'transport' => [
            'class' => 'Swift_SmtpTransport',
            'host' => 'smtp.gmail.com',
            'username' => 'noreply.yourcompany@gmail.com',
            'password' => '123456',
            'port' => '465',
            'encryption' => 'ssl',
        ],
Run Code Online (Sandbox Code Playgroud)