سؤال

الكود الحالي الخاص بي هو هذا

$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