使用TCPDF时出错

时间:2014-12-21 15:42:08

标签: php laravel-4 tcpdf

我正在尝试使用laravel 4的TCPDF,当我使用mysql数据填充表时,我收到此错误,当我使用foreach循环失败时,如果我删除它,它工作得很好:

class PrintController extends BaseController {   

    public function index()
    {
        return View::make('print.PrintView');
    }

    public function generatePDF()
    {
        $notas_detalle = NotaDetalle::all();
        $pdf = $pdf = new TCPDF();
        $pdf->SetPrintHeader(false);
        $pdf->SetPrintFooter(false);
        $pdf->AddPage();
        $html = 
        '<table border="1" cellpadding="4" cellspacing="0" align="center">
        <thead>
         <tr>
          <th colspan="4">
            <p>Chapincar S.R.L</p>
            <p>Agustin Barios Nº 1070 c/ Julio C. Franco - Telefono 674 942 <br/>   
            Fernando de la Mora - Paraguay</p>
            <p></p>
          </th>
          <th colspan="2">
            <p>RUC:80029658-3</p>
            <p>NOTA DE PRESUPUESTO</p>
          </th>
         </tr>
         <tr>
          <td colspan="6" align="left">Asuncion, 26 de Noviembre de 2014</td>
         </tr>
         <tr>
          <td colspan="6" align="left">Señores: Aseguradora del Este</td>
         </tr>
         <tr>
          <td colspan="6" align="left">Dirección: Gilberto Aranda 231</td>
         </tr>
         <tr>
          <td colspan="2" align="left">Telefono: 021674611</td>
          <td colspan="4" align="left">Fecha: 20/12/2014</td>
        </tr>
        </thead>
        <tbody>
         <tr>
          <td>Cantidad</td>
          <td colspan="3">Descripción</td>
          <td>Precio con IVA</td>
          <td>Precio sin IVA</td>
         </tr>';

        $html .= '<tr>';

// HERE IT'S THE ERROR
        foreach ($notas_detalle as $key => $value) {
             $html .= '<td>' .  $value->cantidad_detalle . '</td>';
             $html .= '<td colspan="3">' .  $value->descripcion_detalle . '</td>';
             $html .= '<td>' .   $value->precioIVA_detalle . '</td>';
             $html .= '<td>' .   $value->precioSinIVA_detalle . '</td>';
        }

// ERROR

        $html .= '</tr>';

        $html .= 
        '</tbody>
        </table>'
         ;

        $pdf->writeHTML($html, true, false, true, false, '');
        //$pdf->Text(90, 140, 'This is a test');
        $filename = storage_path() . '/test.pdf';
        $pdf->output($filename, 'I');

        //return Response::download($filename);
    }

}

我做错了什么?请帮忙。

1 个答案:

答案 0 :(得分:0)

评论中提供了解决方案。在此处提供以防其他人遇到类似问题:

$html .= '<tr>';

$html .= '</tr>';

需要在foreach循环中