通过动态生成的页面向html2pdf发送PDF

时间:2016-01-14 09:46:54

标签: php codeigniter html2pdf

所以我使用codeigniter并生成一个页面 我想发送一封邮件,附上PDF格式的页面,但我也不想将其保存在服务器上 我找到了两个代码资源,看起来就像我需要的那样:

<?php
    $content = "
<page>
    <h1>Exemple d'utilisation</h1>
    <br>
    Ceci est un <b>exemple d'utilisation</b>
    de <a href='http://html2pdf.fr/'>HTML2PDF</a>.<br>
</page>";

    require_once(dirname(__FILE__).'/html2pdf/html2pdf.class.php');
    $html2pdf = new HTML2PDF('P','A4','fr');
    $html2pdf->WriteHTML($content);
    $html2pdf->Output('exemple.pdf');
?>

使用html2pdf库创建PDF

<?php 
require_once (dirname)(__FILE__).'/html2pdf/html2pdf.class.php');
require_once (dirname)(__FILE__).'/pjmail/pjmail.class.php');
?>
<?php 
$pdf = new HTML2PDF ('P', 'A4');
$pdf->WriteHTML($content);
$content_pdf = $pdf->Output('document.pdf', true);

$mail = new PJmail();
mail->setAllFrom('webmaster@my_site.net',  "My Site");
$mail->addrecipient('mymail@my_site.net');
$mail->addsubject("test");
$mail->text"Insert some text here...";
$mail->addbinattachement('test.pdf', $content_pdf);
echo $mail->sendmail();
?>

用于发送带有PDF附件的电子邮件。

现在我不得不说我是PHP的初学者,我知道代码的作用。我不知道如何将链接传递给$ content变量 有人告诉我,我应该使用像curlfile_get_contents这样的函数,但我根本不清楚。有人能解释一下吗?

1 个答案:

答案 0 :(得分:1)

我用dom pdf发送你的代码,其中用pdf发送电子邮件,然后发送电子邮件pdf删除

    ob_start();
set_include_path(get_include_path() . PATH_SEPARATOR . "/path/to/dompdf");
require_once APPPATH . "core/dom_pdf/dompdf_config.inc.php";


$dompdf = new DOMPDF();
$dompdf->set_paper(DEFAULT_PDF_PAPER_SIZE, 'A4');
$dompdf->load_html($message);

$dompdf->render();

$output = $dompdf->output();
file_put_contents('pdf_name.pdf', $output);

$this->load->library('email');
$config = array (
'mailtype' => 'html',
'charset'  => 'utf-8',
'priority' => '1'
);
$this->email->initialize($config);

$this->email->from('admin@admin.com', 'Admin');
$this->email->to(Reciever email); 
$this->email->subject('Subject');
$this->email->message($message); 

$this->email->attach(FCPATH."pdf_name.pdf");
$this->email->send();
   <!-- If you want to delete file after send email --> 
unlink(FCPATH."pdf_name.pdf");