YiiMail发送附件

YiiMail发送附件,yii,Yii,在我的项目中,我使用YiiMail扩展向用户发送邮件。其中我附加了一个文件。但问题是不可能使用附件发送邮件。我的邮件代码如下 $this->email->setBody('<p>'.$email.'-'.$name.'-'.$details.'</p>', 'text/html'); $this->email->from = "test@test.com"; $this->email->setSubject('Direct Reques

在我的项目中,我使用YiiMail扩展向用户发送邮件。其中我附加了一个文件。但问题是不可能使用附件发送邮件。我的邮件代码如下

$this->email->setBody('<p>'.$email.'-'.$name.'-'.$details.'</p>', 'text/html');
$this->email->from = "test@test.com";
$this->email->setSubject('Direct Request');
$this->email->attach(CUploadedFile::getInstanceByName('fileupload'));
$this->email->setTo(array($emailId => 'test@test.com'));
$this->email->setBody(“”.$email.-“.$name.-“.$details.

”,“text/html”); $this->email->from=”test@test.com"; $this->email->setSubject(“直接请求”); $this->email->attach(cuploaddedfile::getInstanceByName('fileupload'); $this->email->setTo(数组($emailId=>)test@test.com'));
使用此代码,邮件不会发送,并显示错误消息。 传递给Swift_Mime_SimpleMessage::attach()的参数1必须实现接口Swift_Mime_MimeEntity,给定的cuploatedfile实例

显示此错误的原因是什么以及对此的任何解决方案。
提前感谢

您需要将文件附件转换为SwiftMailer
Swift\u Mime\u MimeEntity
类型
CuploatedFile::getInstanceByName('fileupload')
返回一个SwiftMailer不知道如何处理的类。更多关于

我尚未对此进行测试,但您需要执行以下操作:

$uploadedFile = CUploadedFile::getInstanceByName('fileupload'); // get the CUploadedFile
$uploadedFileName = $uploadedFile->tempName; // will be something like 'myfile.jpg'
$swiftAttachment = Swift_Attachment::fromPath($uploadedFileName); // create a Swift Attachment
$this->email->attach($swiftAttachment); // now attach the correct type
祝你好运