Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/248.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 Yii2发送邮件:未显示来自电子邮件_Php_Yii2_Smtp_Sendmail_Swiftmailer - Fatal编程技术网

Php Yii2发送邮件:未显示来自电子邮件

Php Yii2发送邮件:未显示来自电子邮件,php,yii2,smtp,sendmail,swiftmailer,Php,Yii2,Smtp,Sendmail,Swiftmailer,我想通过我的主机电子邮件发送电子邮件,即:admin@b4p.et 我已从电子邮件id传入此电子邮件,但这是从我在common/config/main.php中配置的SMTP用户名发送邮件 以下是我在common/config/main.php中的邮件配置: 'mailer' => [ 'class' => 'yii\swiftmailer\Mailer', 'viewPath' => '@common/mail', 'useFi

我想通过我的主机电子邮件发送电子邮件,即:admin@b4p.et

我已从电子邮件id传入此电子邮件,但这是从我在common/config/main.php中配置的SMTP用户名发送邮件

以下是我在common/config/main.php中的邮件配置:

'mailer' => [
        'class' => 'yii\swiftmailer\Mailer',
        'viewPath' => '@common/mail',
        'useFileTransport' => false,
        'transport' => [
            'class' => 'Swift_SmtpTransport',
            'host' => 'smtp.gmail.com',
            'username' => 'chiefsrsmail@gmail.com',
            'password' => '*********',
            'port' => '587',
            'encryption' => 'tls',
        ],
    ],
下面是我的发送邮件功能:

 public static function sendMailToUser($ssToEmail, $asFromEmail, $ssSubject, $ssBody, $attach = false)
    {
        $result = Yii::$app->mail->compose()
            ->setFrom([$asFromEmail])
            ->setTo($ssToEmail)
            ->setSubject($ssSubject)
            ->setHtmlBody($ssBody)
            ->send();
        return true;
    }
我经过的地方:

$asFromEmail = admin@b4p.et
此功能适用于发送电子邮件,但所有电子邮件都将通过“chiefsrsmail@gmail.com“表示所有电子邮件都来自我在配置中提供的SMTP用户名的电子邮件地址。我想更改它,但它不起作用


请帮我解决这个问题。

Gmail会自动将通过其SMTP服务器发送的任何邮件的“发件人”标题重写为默认的“以邮件形式发送”电子邮件地址,该地址由Gmail或Google Apps帐户分配,用于进行身份验证(在本例中为您的个人帐户)

如果没有注册到Gmail的主帐户,Gmail似乎不允许通过不同的电子邮件id发送电子邮件

此SMTP服务仅供个人使用,因此不太灵活。我们可以通过修改Gmail设置中的默认帐户来更改此地址,但这仍然无法通过应用程序配置“发件人”地址

要向Gmail帐户添加另一封电子邮件,请执行以下步骤:

在你的电脑上,打开Gmail

  • 在右上角,单击设置,然后单击设置
  • 单击“帐户和导入”或“帐户”选项卡
  • 在“发送邮件为”部分,单击添加其他电子邮件地址
  • 输入您的姓名和发送地址
  • 单击下一步,然后发送验证
  • 单击添加帐户
确认发送到附加电子邮件帐户的链接。 确认后,您的帐户可以从任一地址发送电子邮件

请立即在中尝试新的电子邮件地址

->SetFrom(“已验证的邮件_address@gmail.com“,‘来源于_name’)并且它可以正常工作


要向Gmail帐户添加另一封电子邮件,请参阅此链接:

请不要在此处发布您的清除密码。我建议你改一下为什么你要把数组传给setFrom?@Sfili_81谢谢你。我会改变它这能回答你的问题吗?有没有办法设置起始地址?请参阅此链接以添加另一封电子邮件:更新地址,立即检查否。。但是我已经在我的电子邮件服务器中配置了设置。。我正在尝试从电子邮件服务器主机连接。