私はこの例外がありますが、その他の有用な詳細はありません。私はmpdf6.1.0とPHPZip2.0.8を使用しています。私のコードは以下のようです。PHPZipからのBufferNotEmptyの例外
$zip = new Zip();
$mpdf = null;
foreach ($htmlArr as $name=>$html) {
if ($mpdf === null) {
$mpdf = initializePdf();
}
$mpdf->WriteHTML($html);
$zip->addFile($mpdf->Output('', 'S'), $name, microtime());
$mpdf = null;
}
$zip->sendZip('test.zip', "application/zip", 'test.zip');
initializePdf関数は以下のようになります。
function initializePdf() {
$mpdf = new mPDF('CJK', 'A4', '12px', '', 10, 10, 5, 5);
$mpdf->useAdobeCJK = true;
$mpdf->autoScriptToLang = true;
$mpdf->autoLangToFont = true;
$mpdf->SetDisplayMode('fullpage');
$mpdf->autoMarginPadding = 1;
$mpdf->cropMarkLength = 0;
$mpdf->autoPageBreak = true;
return $mpdf;
}
htmlArrは完全に問題ありません。私はそれを数回チェックした。そして、$ zip-> addFile行にPDFファイルを出力できます。しかし、私はzipファイルで出力ストリームに変更するとき。 BufferNotEmpty例外が発生します。私を助けてください。 私はCakePHP3.2.3を使用しています。私は単純なPHPファイルにコードを分離するとき、それは完璧に正常に動作します。しかし、私はなぜ例外が発生するのかわかりません。そして、デバッグページに私のようなメッセージが表示されます。
Unable to send 'test.zip'. Output buffer contains the following text (typically warning or errors):
私はCakePHP3.2.3を使用しています。私は単純なPHPファイルにコードを分離するとき、それは完璧に正常に動作します。しかし、私はなぜ例外が発生するのかわかりません。そして、デバッグページに私にこのようなメッセージが表示されます – Frank