2017-04-25 5 views
1
나는 PDF ($ 출력 = $ dompdf-> 출력();) genearate하는 DOMPDF를 사용하고

내가 phpmailer과 메일에 첨부 할 필요가 ....sendgrid mail api를 사용하여 dompdf가 생성 한 pdf를 메일에 첨부하려면 어떻게합니까?

그리고로 sendgrid 사용하고 있습니다 메일 서비스는 ...

function sendEMailwithAttachment($mail_type, $mail_variable = array(), $subject, $from, $mailto, $username, $fileName, $filePath) { 

    $to = new SendGrid\Email($username, $mailto); 
    $content = new SendGrid\Content("text/html", $message); 
    $file = $filePath; 
    $file_encoded = base64_encode(file_get_contents($file)); 
    $attachment = new SendGrid\Attachment(); 
    $attachment->setContent($file_encoded); 
    $attachment->setType("application/text"); 
    $attachment->setDisposition("attachment"); 
    $attachment->setFilename($fileName); 

    $mail = new SendGrid\Mail($from, $subject, $to, $content); 
    $mail->addAttachment($attachment); 

} 

어떻게 이메일

에서 $ 출력 값을 $적인 filePath로 $ 출력을 전달할 수있는 방법이 있나요 전달할 수 있습니다?

답변

2

디스크에 PDF 파일을 저장합니다 :

$output = $dompdf->output(); 
file_put_contents('output.pdf', $output); 
$fileName = 'output.pdf'; // Pass this variable to sendEMailwithAttachment function 

그런 다음 메일 보낸 사람에게 파일 경로를 전달합니다. 보내기 후에 서버에서 pdf 파일을 제거하십시오.

출처 : how to save DOMPDF generated content to file?