Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/236.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用PHP打印迭代的PDF_Php_Xml_Pdf_Simplexml - Fatal编程技术网

用PHP打印迭代的PDF

用PHP打印迭代的PDF,php,xml,pdf,simplexml,Php,Xml,Pdf,Simplexml,有谁能告诉我,是否有可能迭代包含PDF数据的SimpleXML对象数组,并将每个打印输出为单独的PDF文件?我已经为此奋斗了一个多星期了。我的最新循环代码如下: foreach($xml->DocumentPDFs->DocumentPDF->PDFBytes as $PDFBytes => $value) { $binary = base64_decode($value); file_put_contents($xml->EnvelopeStatu

有谁能告诉我,是否有可能迭代包含PDF数据的SimpleXML对象数组,并将每个打印输出为单独的PDF文件?我已经为此奋斗了一个多星期了。我的最新循环代码如下:

foreach($xml->DocumentPDFs->DocumentPDF->PDFBytes as $PDFBytes => $value) {
    $binary = base64_decode($value);
    file_put_contents($xml->EnvelopeStatus->EnvelopeID . "/" . $xml->EnvelopeStatus->DocumentStatuses->DocumentStatus->Name . ".pdf", $binary,FILE_APPEND);
}

这将打印出第一个PDF,然后退出循环。

因此,原来是语法问题。在base64_decode调用和file_put_contents调用中:

foreach($xml->DocumentPDFs->DocumentPDF as $value) {
    $binary = base64_decode($value->PDFBytes);
    file_put_contents($xml->EnvelopeStatus->EnvelopeID . "/" . $value->Name . ".pdf", $binary);
}

好了。

是的,这是可能的,但我不知道你的做法是否正确。听起来你的循环被打印对象中的某个东西打破了。你是在谈论我的文件内容吗?是的,可能是,真的需要更多的细节,如果没有,你是否显示PHP错误?你是否启用了错误捕获?我有
错误报告(E\u ALL);ini设置(“显示错误”,1)已在我的脚本中启用。它不显示任何内容。hmmm尝试查看循环本身是否会在文件中运行而不打印为pdf,让它们在每次迭代时回显foo-bar,并查看它是否执行了所有操作,这将缩小范围。