PHP 生成PDF

Posted 老凡

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP 生成PDF相关的知识,希望对你有一定的参考价值。

一个项目中需要用到网页生成PDF,就是将整个网页生成一个PDF文件,

以前也用过html2PDF,只能生成一些简单的HTML代码,复杂的HTML + css 生成的效果惨不忍睹,

百度了一下,发现有个wkhtmltopdf,wkhtmltoimage,下载过来尝试一下,果然不错,可以将网页原封不动的生成为一个PDF文件,完全符合项目需求了。

不过这是一个命令行程序,接下来讲的才是重点了。

wkhtmltopdf是一个在命令行执行的程序,php可以通过exec,system等来执行命令,我尝试了一下,确实可以使用,可以用它调用wkhtmltopdf生成PDF文件,

但是效率实在太低,生成实在太慢,测试的时候是一个人,生成一个文件,假如是生产环境很多人同时生成的话,估计肯定不行。

但是直接在命令行执行wkthmltopdf生成命令,执行速度还是很快的。

如何解决效率问题。

也没有想到什么好的方法了,我的解决思路:

将需要生成的网址,提交保存到数据库,然后写了一个命令行执行的php脚本,读取这个表里面需要生成的记录,有的话,就调用命令生成文件,这个脚本设置为5秒定时执行一次,

网页上,,在写一个ajxa轮询,1秒一次,检测文件是否有生成

就这样解决了问题了。

虽然不是很完美,但是项目确实可用了,如果对速度要求高一点的话可以将PHP执行3秒一次,2秒一次。应该会更快。这个就没尝试过了。

以上是关于PHP 生成PDF的主要内容,如果未能解决你的问题,请参考以下文章

使用 PHP 生成 PDF 文件(包括 PNG 图像)

使用PHP生成PDF文档

在 php 中使用 svg 原始数据生成 PDF

没有在 php 中使用 mpdf 生成 PDF

Yii, Php, mPDF, 生成带有不同方向小部件的 pdf

从 HTML PHP 生成 PDF