Php 无法流式传输pdf:使用wordpress时已发送标题
我正在尝试在我的插件上使用dompdf来创建另存为pdf功能,但我仍然得到了一些帮助Php 无法流式传输pdf:使用wordpress时已发送标题,php,wordpress,dompdf,Php,Wordpress,Dompdf,我正在尝试在我的插件上使用dompdf来创建另存为pdf功能,但我仍然得到了一些帮助 无法流式传输pdf:标题已发送 我做了一些研究,但解决方案行不通。我还使用了一个答案所建议的exit(),但它不起作用 这是我目前的代码 include(WPtest_PLUGIN_PATH.'/admin/includes/dompdf/lib/html5lib/Parser.php'); include(WPtest_PLUGIN_PATH.'/admin/includes/dompdf/lib/php-f
无法流式传输pdf:标题已发送
我做了一些研究,但解决方案行不通。我还使用了一个答案所建议的exit()
,但它不起作用
这是我目前的代码
include(WPtest_PLUGIN_PATH.'/admin/includes/dompdf/lib/html5lib/Parser.php');
include(WPtest_PLUGIN_PATH.'/admin/includes/dompdf/lib/php-font-lib/src/FontLib/Autoloader.php');
include(WPtest_PLUGIN_PATH.'/admin/includes/dompdf/lib/php-svg-lib/src/autoload.php');
include(WPtest_PLUGIN_PATH.'/admin/includes/dompdf/src/Autoloader.php');
Dompdf\Autoloader::register();
use Dompdf\Dompdf;
class WPtest_Save_PDF{
//use Dompdf\Dompdf;
function __construct(){
add_shortcode( 'save_me',array($this,'print_callback'));
}
function print_callback(){
if(isset($_GET['print']))
{
$dompdf = new Dompdf();
$dompdf->loadHtml("test");
// (Optional) Setup the paper size and orientation
$dompdf->setPaper('A4', 'landscape');
// Render the HTML as PDF
$dompdf->render();
// Output the generated PDF to Browser
$dompdf->stream();
exit();
}
}
}
new WPtest_Save_PDF;
您的wordpress已经向浏览器发送了一些数据,当发送任何数据时,也会发送标题
我建议您使用缓冲区(ob_start,ob_end_flush,…),但它是通用的,我不知道它是否适用于您的情况,我并没有真正使用wordpress结构。我也尝试过使用
ob_start
,ob_get_content
,ob\u end\u clean
。可以尝试将pdf生成代码挂接到admin\u init吗?我将用add action替换add\u shorcode,对吗?是的。请喝一杯try@JomolMJ像这样的?它仍然不起作用。有什么效果吗?