无法在Yii2 swift邮件程序中打开文件进行阅读

时间:2016-12-11 08:28:15

标签: php yii2 swiftmailer

我试图在yii2中使用swiftmailer将图像嵌入到视图中,但它返回错误无法打开文件进行读取

这是我尝试过的 在模型中

public function sendAccountActivationEmail($user)
{
    return Yii::$app->mailer->compose('signup', ['user' => $user,
             'successimage' => Yii::getAlias("@web/uploads/siteimages/
                               emails/signup.png")])  //this is path to img

        ->setFrom([Yii::$app->params['supportEmail'] => Yii::$app->name . ' colors'])
        ->setTo($this->email)
        ->setSubject('Account activation for ' . Yii::$app->name)
        ->send();
}

在signup.php的视图文件中我有

 <img src="<?= $message->embed($successimage); ?>">

我在哪里出错了,我检查了This link,但提供了附加未嵌入现有文件的图像的线索。在Yii2 documentation上,他们提供了上述方法,但无法正常工作

1 个答案:

答案 0 :(得分:1)

  

您需要提供上传的完整路径而不是相对路径   因为那将被解释为相对于类文件   尝试打开您的附件Swift-mailer problem

您可以使用@webroot来解决问题。

'successimage' => \Yii::getAlias("@webroot/uploads/siteimages/emails/signup.png")