我正在Yii 2.0
开展一个项目。我必须使用<img>
标记向用户发送电子邮件,其中"src"
属性设置为指向我服务器上的操作的网址(用于跟踪电子邮件,检查用户是否已将其打开)。我这样做:
$message = \Yii::$app->mail->compose()
->setFrom([\Yii::$app->params['supportEmail'] => $usersurveyconfig->survey_email_from])
->setTo($customers->email)
->setSubject($usersurveyconfig->survey_email_subject);
$imageFileName = "http://www.myserver.com/frontend/web/index.php?r=site/myaction";
<img src="<?= $message->embed($imageFileName) ?>">
但是当我发送电子邮件时,会弹出此错误:
无法打开文件进行阅读 [http://www.myserver.com/frontend/web/index.php?r=site/myaction]
那么,我怎样才能做到这一点?任何想法?
答案 0 :(得分:1)
如果图片是用于跟踪目的,那么您不应该嵌入它。因此,您的代码应该是:
<img src="<?= $imageFileName ?>">
对于嵌入,参数应该是要嵌入的文件的路径,例如
<img src="<?= $message->embed('../web/images/image.png') ?>">
有关详细信息,请参阅the docs。