【发布时间】:2019-11-08 04:06:26
【问题描述】:
当我使用 var_dump($filename) 返回文件名和 gettype($filename) 返回字符串时,我正在尝试发送带有附件的电子邮件。但是当我尝试发送附件时,即使 $file_attachment 被循环,它仍然返回 Unable to open file for reading [filename.pdf] 我试图更改 UploadedFile::getInstancesByName('file_attachment');到 UploadedFile::getInstanceByName('file_attachment');但什么也没发生。请帮帮我。
这是我的控制器
if(Yii::$app->request->isPost){
$email = Yii::$app->request->post('email');
$message = Yii::$app->request->post('message');
$file_attachment = UploadedFile::getInstancesByName('file_attachment');
if($file_attachment){
$mail = Yii::$app->mailer->compose()
->setFrom(['myemail@gmail.com' => 'My Email'])
->setTo($email)
->setSubject('My Subject')
->setHtmlBody($message);
foreach ($file_attachment as $file) {
$filename = $file->baseName. '.' . $file->extension;
$mail->attach($filename);
}
//$mail->send();
//echo gettype($filename);
// var_dump($filename);
$mail->send();
}else{
$mail = Yii::$app->mailer->compose()
->setFrom(['myemail@gmail.com' => 'My Email'])
->setTo($email)
->setSubject('My Subject')
->setHtmlBody($message)
->send();
}
}
这是风景
<?php
echo FileInput::widget([
'name' => 'file_attachment',
'attribute' => 'file_attachment',
'options' => ['multiple' => true]
]);
?>
【问题讨论】:
标签: yii2 swiftmailer