質問

私の現在のコードはこれです

$swift = email::connect();


        $swift->setSubject('hello')
              ->setFrom(array('alex@example.com.au' => 'Alex'))
              ->setTo(array('alex@example.com.au' => 'Alex'))
              ->setBody('hello')  
              ->attach(Swift_Attachment::fromPath(DOCROOT . 'assets/attachments/instructions.pdf'));

        $swift->send();

email::connect() SwiftMailer のインスタンスを返します.

とおり これらのドキュメント, 、それはうまくいくはずだと思われます。

ただし、エラーが発生します

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

私はそれを見ました email::connect() ドキュメントのコード例とまったく同じことを行います。あれは

  • 正しいファイルを含めてください
  • ライブラリのインスタンスを返す

私の何が間違っているのでしょうか?

ありがとう

役に立ちましたか?

解決

あなたはSwift_Mailerインスタンスではなく、あなたがにリンクされている例のようにSwift_Messageを使用しています。

私はあなたがこのような何かをしたいと思います

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

        $message->setSubject('hello')
              ->setFrom(array('alex@example.com.au' => 'Alex'))
              ->setTo(array('alex@example.com.au' => 'Alex'))
              ->setBody('hello')  
              ->attach(Swift_Attachment::fromPath(DOCROOT . 'assets/attachments/instructions.pdf'));

        $swift->send($message);
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top