如何确保PHP curl在合并时完全下载pdf和pdftk命令以跳过损坏的pdf


How to ensure PHP curl fully downloads pdf and pdftk command to skip damaged pdfs when merging

目前我有一个php scrip,可以下载50多个pdf并合并它们。但有时在下载时,它没有完全下载pdf文件,因此它会被损坏。当使用pdftk执行合并命令时,由于pdfs损坏,它会引发异常。

我正在使用curl下载pdf,在下载下一个文件之前,是否可以进行检查以确保文件已完全下载?或者pdftk可以跳过损坏的文件合并所有文件吗?

以下是代码:

下载:

$fp = fopen($pathS, 'w');
         
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$urlS);
curl_setopt($ch, CURLOPT_FILE, $fp);
$data = curl_exec($ch);
fclose($fp);

合并:

"C:'Program Files'PDF Labs'PDFtk Server'bin'pdftk.exe" 1.pdf...0.pdf cat output %mydate%.pdf"

使用:

curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt ($ch, CURLOPT_TIMEOUT, 0);

在继续下载下一个pdf之前,我可以确保pdf已完全下载。