2010-03-19 14 views
3

Mon code actuel est ceBesoin d'aide avec Swift Mailer avec Kohana wrapper

$swift = email::connect(); 


     $swift->setSubject('hello') 
       ->setFrom(array('[email protected]' => 'Alex')) 
       ->setTo(array('[email protected]' => 'Alex')) 
       ->setBody('hello') 
       ->attach(Swift_Attachment::fromPath(DOCROOT . 'assets/attachments/instructions.pdf')); 

     $swift->send(); 

Le email::connect()returns an instance of SwiftMailer. En vertu de these docs, il semblerait que cela devrait fonctionner.

Cependant, je reçois une erreur

Fatal error: Call to undefined method Swift_Mailer::setSubject() in /home/user/public_html/application/classes/controller/properties.php on line 45 

Je l'ai vu que email::connect() fait exactement ce que l'exemple de code dans la documentation fait. C'est

  • comprennent le fichier correct
  • retour une instance de la bibliothèque

Qu'est-ce que je fais mal?

Merci

Répondre

2

Vous utilisez une instance Swift_Mailer, pas un Swift_Message comme dans l'exemple que vous lié.

Je pense que vous voulez quelque chose comme ceci:

$swift = email::connect(); 
$message = Swift_Message::newInstance(); 

     $message->setSubject('hello') 
       ->setFrom(array('[email protected]' => 'Alex')) 
       ->setTo(array('[email protected]' => 'Alex')) 
       ->setBody('hello') 
       ->attach(Swift_Attachment::fromPath(DOCROOT . 'assets/attachments/instructions.pdf')); 

     $swift->send($message); 
+0

Maudit l'après-midi vendredi soir. Merci mon pote et bonne fin de semaine! BTW, j'ai vu que vous étiez de Brisbane, je vous achèterais une bière si vous viviez 100 km au nord: P – alex

+0

@alex: Merci, je ne bois pas réellement (le plus dur que je bois serait probablement un * gingembre * Bière). Passez aussi un bon week-end! –