Я использую mpdf для генерации PDF-файла с использованием буферизации вывода. Нет проблем генерирования PDF-файлов вне функции. Проблема в том, что он не может сгенерировать PDF внутри функции. Файл PDF не создается. Данные, которые будут включены в pdf, — это файлы изображений в цикле foreach ниже.
include("search/mpdf/mpdf.php");
function generatecont ($firstdate, $seconddate, $allfiles) {
echo '<div class="displayoutput" style="display:none;">';
echo "<a href='data/pdf/".$_GET["parameter"].'-'.$firstdate .'-'. $seconddate. '.pdf' ."'>Download PDF </a>";
//include("search/mpdf/mpdf.php");
global $html;
global $mpdf;
$mpdf=new mPDF();
ob_start();
foreach ($allfiles as $filesfound) {
echo '<h1 class="displaytitle">'.strtoupper(substr(basename($filesfound), 0,-4)). '</h1>';
echo '<div class="visualize">'.'<img src="'. $filesfound. '"></div>';
}
$html = ob_get_contents();
ob_get_flush();
$mpdf->WriteHTML($html);
$mpdf->Output('data/pdf/'.$_GET["parameter"].'-'.$firstdate .'-'. $firstdate. '.pdf','F');
echo '</div>';
}
Я бы проверил разрешения как начало, так и любые сообщения вывода / журнала. Также ссылка, созданная в первой части, использует $seconddate
но файл, сохраняемый ближе к концу, использует $firstdate
дважды. Таким образом, генерируемый файл не совпадает с файлом, на который идет ссылка.
Других решений пока нет …