Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Gunakan PHP dan XML untuk mencetak halaman web dan mengeksport PDF

Gunakan PHP dan XML untuk mencetak halaman web dan mengeksport PDF

WBOY
WBOYasal
2023-08-10 12:42:271236semak imbas

Gunakan PHP dan XML untuk mencetak halaman web dan mengeksport PDF

Gunakan PHP dan XML untuk mencetak dan mengeksport PDF daripada halaman web

Dalam masyarakat moden, mencetak dan mengeksport PDF daripada halaman web telah menjadi keperluan yang sangat biasa. Fungsi ini boleh dilaksanakan dengan mudah menggunakan PHP dan XML. Dalam artikel ini, kita akan belajar cara menggunakan PHP dan XML untuk mencetak halaman web dan mengeksport PDF.

1. Mencetak halaman web

Pertama, kita perlu mencipta fail XML yang mengandungi kandungan halaman web. Sebagai contoh, kita boleh mencipta fail yang dipanggil "content.xml" dan memasukkan kod HTML halaman web dalam fail. Berikut ialah contoh fail "content.xml":

<content>
  <html>
    <head>
      <style>
        /* CSS样式表,控制页面的打印样式 */
        @media print {
          /* 隐藏不需要打印的元素 */
          .no-print {
            display: none;
          }
        }
      </style>
    </head>
    <body>
      <h1>这是一个网页的标题</h1>
      <p>这是网页的内容。</p>
      <button class="no-print" onclick="window.print()">打印</button>
    </body>
  </html>
</content>

Dalam contoh di atas, kami mentakrifkan helaian gaya CSS dalam teg kepala, di mana bahagian cetakan @media digunakan untuk menentukan gaya yang hanya berkuat kuasa semasa mencetak. Sebagai contoh, kita boleh menggunakan kelas .no-print untuk menyembunyikan elemen yang tidak perlu dicetak. Dalam teg badan, kami menambah butang cetak dan memanggil fungsi window.print() dalam acara onclick untuk mencetuskan operasi pencetakan.

Kemudian, kita boleh mencipta fail PHP bernama "print.php" untuk memuatkan dan memaparkan kandungan halaman web dalam fail XML. Berikut ialah contoh fail "print.php":

<?php
// 加载XML文件
$xml = simplexml_load_file('content.xml');

// 输出XML文件中的网页内容
echo $xml->html;
?>

Dalam contoh di atas, kami menggunakan fungsi simplexml_load_file() untuk memuatkan fail "content.xml", dan menggunakan pernyataan gema untuk mengeluarkan kandungan halaman web dalam fail XML.

Akhir sekali, kita boleh memaparkan halaman web dan mencetaknya dengan mengakses fail "print.php". Sebagai contoh, kita boleh memasukkan "http://localhost/print.php" dalam penyemak imbas untuk mengakses fail "print.php", dan klik butang cetak dalam halaman web yang dipaparkan untuk melaksanakan operasi pencetakan.

2. Eksport PDF dari halaman web

Untuk melaksanakan fungsi mengeksport PDF dari halaman web, kami boleh menggunakan perpustakaan pihak ketiga seperti TCPDF atau FPDF. Perpustakaan ini menyediakan fungsi dan kelas untuk menukar kandungan web kepada fail PDF.

Pertama, kita perlu memasukkan dan memulakan perpustakaan PDF. Berikut ialah contoh fail "pdf.php":

<?php
// 导入TCPDF库
require('tcpdf/tcpdf.php');

// 创建TCPDF实例
$pdf = new TCPDF();

// 设置PDF文档属性
$pdf->SetCreator('Your Name');
$pdf->SetTitle('Example PDF');

// 获取XML文件中的网页内容
$xml = simplexml_load_file('content.xml');
$html = $xml->html;

// 添加PDF页面
$pdf->AddPage();
$pdf->writeHTML($html);

// 输出PDF文件
$pdf->Output('example.pdf', 'I');
?>

Dalam contoh di atas, kami mula-mula mengimport perpustakaan TCPDF dan mencipta tika TCPDF. Dengan memanggil fungsi SetCreator() dan SetTitle(), kami menetapkan pencipta dan tajuk dokumen PDF.

Kemudian, kami memuatkan fail "content.xml" menggunakan fungsi simplexml_load_file() dan memperoleh kandungan halaman web dalam fail XML. Seterusnya, kami memanggil fungsi AddPage() untuk menambah halaman PDF, dan menggunakan fungsi writeHTML() untuk menulis kandungan halaman web ke dalam fail PDF.

Akhir sekali, kami memanggil fungsi Output() untuk mengeluarkan fail PDF. Dalam contoh, kami menggunakan parameter "I", yang bermaksud membuka fail PDF terus dalam penyemak imbas. Jika anda ingin menyimpan fail PDF secara setempat, anda boleh menggunakan parameter "D" untuk menentukan laluan fail.

Dengan mengakses fail "pdf.php", kami boleh membuka atau memuat turun fail PDF yang dijana terus dalam penyemak imbas.

Ringkasan:

Menggunakan PHP dan XML, anda boleh merealisasikan fungsi pencetakan dan eksport PDF halaman web dengan mudah. Dengan mencipta fail XML yang mengandungi kandungan web, kami boleh menggunakan kod PHP mudah untuk memuatkan dan memaparkan kandungan web, dan menggunakan perpustakaan pihak ketiga untuk menukar kandungan web kepada fail PDF. Fungsi ini boleh memenuhi keperluan pencetakan dan penjimatan pengguna serta meningkatkan pengalaman pengguna. Semoga kandungan artikel ini dapat membantu anda!

Atas ialah kandungan terperinci Gunakan PHP dan XML untuk mencetak halaman web dan mengeksport PDF. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn