【问题标题】:PHP - mpdf and output buffering couldn't work inside a functionPHP - mpdf 和输出缓冲不能在函数内工作
【发布时间】:2014-10-18 04:05:05
【问题描述】:

我正在使用 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>';
}

【问题讨论】:

  • 你能澄清你的问题吗?问题是什么?屏幕上显示的是什么?函数 generatecont() 应该返回什么?
  • 谢谢。我已经更新了我的问题。该函数应该生成pdf和其他内容。现在清楚了吗?
  • 我会检查权限作为开始,以及任何输出/日志消息。此外,第一部分中生成的链接使用$seconddate,但在最后保存的文件使用$firstdate 两次。所以生成的文件和链接的文件不一样。
  • 非常好的观察!当我更正要生成的文件名时,它现在已解决。谢谢!请将其发布为答案。
  • 很高兴知道。谢谢!现已添加。

标签: php function pdf include mpdf


【解决方案1】:

我会检查权限作为开始,以及任何输出/日志消息。此外,第一部分中生成的链接使用$seconddate,但在最后保存的文件使用$firstdate 两次。所以生成的文件和链接的文件不一样。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-05
    • 1970-01-01
    相关资源
    最近更新 更多