【问题标题】:generate dynamic rows in pdf using html2pdf使用 html2pdf 在 pdf 中生成动态行
【发布时间】:2017-05-31 17:15:30
【问题描述】:

我正在使用 html2pdf 生成 pdf。我需要动态生成一些行。 我的代码是..

         <?php
        require_once("html2pdf.class.php");
        $content = '<html><body><table border="0"  >
        <tr><td align="center" > <h4><b> CHAMPIONSHIP
        2015-16</b> </h4></td> </tr>
        <tr><td align="center"><h4><b>
        </b></h4></td></tr>
        <tr><td align="center"><h4><b>DETAILED ENTRY</b>
        </h4> </td></tr>
        <tr><td><h4><b>Name of Manager :</tr>

        </table>
        $html2pdf = new HTML2PDF
        ('L','A4','de',true,'UTF-8',array(10, 10, 10, 10));
        $html2pdf->WriteHTML($content);
        $html2pdf->Output($filename.'.pdf');

我如何在这个内容中添加 php。如果它仍然不起作用,请建议其他东西来生成 pdf..谢谢

【问题讨论】:

  • 你能给出你想添加的示例动态行吗?
  • 我需要从 db.$List = mysql_query("somequery"); while($element= mysql_fetch_array($List)) { //根据结果添加行 }
  • 如何将此代码集成到 $content

标签: php pdf html2pdf


【解决方案1】:

你不能像基本的 PHP 那样做吗?

$your_var = 'what you want';

$content = '<html><body><table border="0">';
$content .= '<html code...>'.$your_var.'</...html code>';
$content .= '</table></body><html>';

【讨论】:

  • 添加变量没问题..但我需要像 $content =' .. 一样使用它
    if(something){ echo " something"}
    OR while(condition){ //在此处生成行 }
【解决方案2】:

试试这个:

 <?php
    require_once("html2pdf.class.php");
    $content = '<html><body><table border="0"  >';
    db.$List = mysql_query("somequery"); 
    while($element= mysql_fetch_array($List)) { 
    $content .= '<tr><td>'.$element["value"].'</td></tr>';
    }

    $content .= '</table></body></html>';
    $html2pdf = new HTML2PDF
    ('L','A4','de',true,'UTF-8',array(10, 10, 10, 10));
    $html2pdf->WriteHTML($content);
    $html2pdf->Output($filename.'.pdf');

【讨论】:

    【解决方案3】:

    你可以这样做:

    $content = '<html><body><table border="0">';
    $content .= '<tr><td>';
    if(your_condition){
        $content .= 'what you want';
    }
    $content .= '</td></tr>';
    while(other_condition){
        // What you want in your loop (generate rows)
        $content .= '<tr><td>'.$line_number.'</td></tr>';
    }
    $content .= '</table></body><html>';
    

    您可以使用三元运算符代替 if/else:

    $content .= '<tr><td>'.(condition ? 'Some text' : 'other text').'</td></tr>';
    

    【讨论】:

      猜你喜欢
      • 2023-03-08
      • 1970-01-01
      • 2019-04-16
      • 2019-07-29
      • 2012-09-11
      • 1970-01-01
      • 2018-09-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多