how to add an attachment to an email in Symfony?

24,357

Solution 1

You have several options to attach a document to an email using swift mailer.

From the symfony doc:

$message = Swift_Message::newInstance()
  ->setFrom('[email protected]')
  ->setTo('[email protected]')
  ->setSubject('Subject')
  ->setBody('Body')
  ->attach(Swift_Attachment::fromPath('/path/to/a/file.zip'))
;

$this->getMailer()->send($message);

And many others possibility from the swift mailer doc.

Solution 2

Also you can attach a file by resource.

$message = Swift_Message::newInstance()
  ->setFrom('[email protected]')
  ->setTo('[email protected]')
  ->setSubject('Subject')
  ->setBody('Body')
  ->attach(Swift_Attachment::newInstance($content, 'invoice.pdf','application/pdf'));
Share:
24,357
nic
Author by

nic

Updated on July 09, 2022

Comments

  • nic
    nic almost 2 years

    I want to add an attachment to an email. I am using sfmailer class.

    Here I have given my code below:

    $mail_body = '<p>custom html mail content</p>';
    $message = Swift_Message::newInstance('Message title')
      ->setFrom(array('sender'))
      ->setTo(array('receiver'))
      ->setBody($mail_body, 'text/html', 'utf-8');
    
    try {
      $this->getMailer()->send($message);
    }
    catch(Exception $e) {
    
    }