作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我有带 TWIG 模板引擎的 Symfony 框架。我正在制作 1000 页的 pdf
<dynamic-page>...content in for-loop...</dynamic-page>`
然而,当使用 ps_facade
写入磁盘时,它给我内存耗尽的 fatal error 。那么,有什么方法可以以 5 页为单位创建此 pdf 吗?
经过研究,我发现使用包含 5 页数据的模板,然后将其写入文件应该可行。但那样我将无法添加页码,因为页码应该是 1-1000。我的页脚代码如下所示,
<placeholders>
<footer>
<div height="30px" width="100%">
<hr/>
<div float="left">Blah Blah</div>
<div float="left" margin-left="350px"><page-info format="Page %s of %s"></div>
</div>
</footer>
</placeholders>
最佳答案
您应该为 long processes like this 使用消息系统. RabbitMQ 可以胜任这项工作。
优点:由于进程不是web版php运行的,所以没有memory_limit和max_execution时间限制如果作业已经在运行,您可以告诉您的用户,而不是为同一个 pdf 启动另一代。由于人们在不耐烦时经常刷新页面,这对您的服务器来说确实是一个巨大的优势(更少的 CPU 使用率)。
缺点:您必须设置一个消息传递服务器并学习一些东西。但这真的是一个骗局吗?
关于php - 在 Symfony 中,有没有办法一次创建 pdf 文件页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12790414/
我是一名优秀的程序员,十分优秀!