当前位置:首页 > PHP

php实现web打印

2026-02-16 17:58:09PHP

PHP 实现 Web 打印的方法

使用 JavaScript 的 window.print() 方法

PHP 可以通过生成包含 JavaScript 代码的 HTML 页面来实现打印功能。在 PHP 中输出 HTML 和 JavaScript,调用浏览器的打印对话框。

<?php
echo '<button onclick="window.print()">打印页面</button>';
?>

生成打印专用的 HTML 页面

创建一个专门用于打印的 PHP 页面,通过 CSS 控制打印样式,隐藏不需要打印的元素。

<?php
echo '<link rel="stylesheet" href="print.css" media="print">';
echo '<div class="print-content">打印内容</div>';
echo '<button onclick="window.print()">打印</button>';
?>

print.css 中设置打印样式:

@media print {
    .no-print {
        display: none;
    }
    .print-content {
        width: 100%;
    }
}

使用 TCPDF 或 FPDF 生成 PDF 打印

通过 PHP 库(如 TCPDF 或 FPDF)生成 PDF 文件,用户下载后打印。

<?php
require_once('tcpdf/tcpdf.php');
$pdf = new TCPDF();
$pdf->AddPage();
$pdf->Write(0, '打印内容');
$pdf->Output('document.pdf', 'D'); // D 表示下载
?>

直接打印 HTML 内容

通过 PHP 输出 HTML 内容,并使用 CSS 控制打印布局。

<?php
$content = '<div class="print-area">需要打印的内容</div>';
echo $content;
echo '<script>window.print();</script>';
?>

使用 PHP 打印服务器端数据

从数据库获取数据并生成打印内容。

<?php
$conn = new mysqli('localhost', 'user', 'password', 'database');
$result = $conn->query('SELECT * FROM orders');
echo '<table>';
while ($row = $result->fetch_assoc()) {
    echo '<tr><td>' . $row['id'] . '</td><td>' . $row['name'] . '</td></tr>';
}
echo '</table>';
echo '<button onclick="window.print()">打印表格</button>';
?>

打印特定 DIV 内容

通过 JavaScript 仅打印页面中的特定部分。

php实现web打印

<?php
echo '<div id="print-section">打印这部分内容</div>';
echo '<button onclick="printDiv(\'print-section\')">打印</button>';
echo '<script>
function printDiv(divId) {
    var printContents = document.getElementById(divId).innerHTML;
    var originalContents = document.body.innerHTML;
    document.body.innerHTML = printContents;
    window.print();
    document.body.innerHTML = originalContents;
}
</script>';
?>

注意事项

  • 打印样式应使用 @media print 优化布局。
  • 避免打印页面时出现不必要的页眉、页脚,可通过浏览器设置或 CSS 调整。
  • 使用 PDF 生成库时,确保服务器支持文件写入和输出。

标签: phpweb
分享给朋友:

相关文章

php实现分页

php实现分页

PHP实现分页的基本方法 使用LIMIT和OFFSET进行数据库查询分页。通过计算当前页码和每页显示数量,动态生成SQL语句。 $page = isset($_GET['page']) ? (int…

php 实现自动收货

php 实现自动收货

PHP 实现自动收货功能 自动收货功能通常用于电商系统,在订单超过一定时间未手动确认收货时自动完成订单。以下是实现方法: 数据库设计 需要订单表包含以下关键字段: CREATE TABLE…

php实现socket

php实现socket

PHP 实现 Socket 通信 PHP 可以通过 socket 扩展实现网络通信,支持 TCP/UDP 协议。以下是实现 Socket 通信的核心步骤和代码示例。 创建 TCP 服务器 //…

php实现博客

php实现博客

使用PHP实现博客系统 数据库设计 创建数据库表存储博客文章和用户信息。常见的表包括posts(文章)和users(用户)。 CREATE TABLE users ( id INT AUTO…

php 实现面包屑导航

php 实现面包屑导航

实现面包屑导航的方法 面包屑导航(Breadcrumb Navigation)是一种常见的网站导航方式,用于显示用户当前页面的路径。以下是几种在 PHP 中实现面包屑导航的方法。 基于 URL 路径…

php 实现评论

php 实现评论

实现 PHP 评论功能 数据库设计 创建数据库表存储评论数据,通常包含以下字段: id:评论唯一标识 user_id:用户ID content:评论内容 created_at:评论时间 parent…