我们说我有一组对象$shippingDetails
,其中每个shippingDetail
都有一个属性image_string
。
我正在使用pdf_decode
和file_put_contents
将每个image_string转换为PDF。我想将PDF合并在一起。
为什么我的代码不起作用?:
$fileArray = array();
$i = 0;
foreach($shippingDetails as $shippingDetail) {
$pdf_decoded = base64_decode ($shippingDetail['image_string']);
$tempName = 'temp' . $i++ . '.pdf';
file_put_contents($tempName, $pdf_decoded);
$fileArray[] = $tempName;
}
$dataDir = 'save_path/';
$outputName = $dataDir . 'shippingLabel.pdf';
$cmd = "gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=$outputName ";
//Add each pdf file to the end of the command
foreach($fileArray as $file) {
$cmd .= $file." ";
}
$result = shell_exec($cmd);
我获得的所有内容都是最后一个PDF。
答案 0 :(得分:0)
我觉得这不起作用,因为我的服务器上没有安装GhostScript。
在我意识到这一点之前,我最终使用了libmergepdf by hanneskod,如果有人在将来偶然发现它,它的效果非常好。