06-12-2020, 11:38 PM
I am trying to create PDF using PhpSpreadsheet with CI 3.1.11 but it gives error as per attachment. So is it necessary to merge PhpSpreadsheet with mPDF.
I used below code
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
require(APPPATH.'/third_party/PhpSpreadsheet/vendor/autoload.php');
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
use PhpOffice\PhpSpreadsheet\Writer\Pdf\Mpdf;
class Exports extends CI_Controller {
function __construct()
{
parent::__construct();
}
public function index()
{
$spreadsheet = new Spreadsheet();
$htmlString = '<table>
<tr>
<td>Hello World</td>
</tr>
<tr>
<td>Hello<br />World</td>
</tr>
<tr>
<td>Hello<br>World</td>
</tr>
</table>';
$reader = new \PhpOffice\PhpSpreadsheet\Reader\Html();
$spreadsheet = $reader->loadFromString($htmlString);
$writer = \PhpOffice\PhpSpreadsheet\IOFactory::createWriter($spreadsheet, 'Mpdf');
$writer->save("demo.pdf");
}
}
I used below code
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
require(APPPATH.'/third_party/PhpSpreadsheet/vendor/autoload.php');
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
use PhpOffice\PhpSpreadsheet\Writer\Pdf\Mpdf;
class Exports extends CI_Controller {
function __construct()
{
parent::__construct();
}
public function index()
{
$spreadsheet = new Spreadsheet();
$htmlString = '<table>
<tr>
<td>Hello World</td>
</tr>
<tr>
<td>Hello<br />World</td>
</tr>
<tr>
<td>Hello<br>World</td>
</tr>
</table>';
$reader = new \PhpOffice\PhpSpreadsheet\Reader\Html();
$spreadsheet = $reader->loadFromString($htmlString);
$writer = \PhpOffice\PhpSpreadsheet\IOFactory::createWriter($spreadsheet, 'Mpdf');
$writer->save("demo.pdf");
}
}