Symfony 2.8과 SwiftMailer Bundle 2.5를 사용하여 SwiftMailer 메시지를 작성하려고합니다. 여기서 간단한 HTML 메시지가있는 PDF를 주소로 보냅니다. 전자 메일을 보낼 수 있지만 모든 예제 코드는 Swift_Message
에 의해 주어진 메서드 목록에 존재하지 않는 addPart() 및 attach()와 같은 메서드를 사용하며 다른 것을 사용하는 예제를 찾을 수 없습니다.PHP Symfony 2.8 Swiftmailer 번들 2.5, 코드로 PDF 첨부 파일로 메시지 작성
나는 렌더링 나뭇 가지 템플릿에서 PDF를 만든 다음
$pdf = $this->get('knp_snappy.pdf')->getOutputFromHtml($response);
$message = \Swift_Message::newInstance()
->setSubject('Hello Email')
->setFrom('[email protected]')
->setTo('[email protected]')
->setBody(
$this->renderView(
// app/Resources/views/Emails/registration.html.twig
'Emails/registration.html.twig',
array('name' => "test")
),
'text/html'
);
첨부 파일로 첨부 할 메시지를 작성합니다 $attachment = \Swift_Attachment::newInstance($pdf, $pdf_name, 'application/pdf');
두
$message->addPart($attachment, $contentType = "application/pdf", $charset = null);
및
$message->attach(\Swift_Attachment::fromPath('/path/to/image.jpg')->setFilename('myfilename.jpg'));
을
개의 메소드가 존재하지 않습니다.
이상하게도, 하이라이트 메시지가
Method 'attach' not found in class \Swift_Mime_MimePart less...
Referenced method is not found in subject class.
라고하지만이 출처 나 나는 Swift_Mime_MimePart
클래스에서 위쪽으로 여러 계층을 것을 제대로 주어진 메시지 클래스를 호출하는 방법을 어디 알아내는 어떤 성공을 했어 클래스 계층 구조이며 코드에서 직접 호출되거나 참조되지 않습니다.
내가 여기에 문제가 표시됩니다 누락 된 코드가있는 것 같은 느낌. '$ message' 변수를 생성하는 시점에서부터'attach()'메소드를 실행하려고하는 모든 코드를 포함 할 수 있습니까? – Augwa
@Augwa - 바로 그게 바로 복사 된 것입니다. Swiftmailer는 스스로 http://swiftmailer.org/docs/messages.html을 문서화합니다. 그래서 나는 너무 혼란 스럽습니다. 나는 메시지를 만든 다음 즉시 'attach()'하려고합니다. 사이에 코드가 있어야합니까? –
번들 전체를 다시 설치해 보았습니다. 문제가 해결되었는지 확인하기 위해 이전 버전으로 롤백을 시도 할 수도 있지만 FOSUserBundle과 같은 다른 번들에 의존하기 때문에 여러 가지 문제가 발생할 수 있습니다. –