Я использую PHPExcel, Есть два листа, и в каждый лист нужно вставить таблицу html. Как это возможно?
$tmpfile = tempnam(sys_get_temp_dir(), 'html');
file_put_contents($tmpfile, $table);
$excelHTMLReader = PHPExcel_IOFactory::createReader('HTML');
$excelHTMLReader->loadIntoExisting($tmpfile, $objPHPExcel);
unlink($tmpfile);
Этот вариант подходит для одного листа, как положить HTML в два листа
ОТВЕТ:
require_once "/PHPExcel.php";
$objPHPExcel = new PHPExcel();
$objPHPExcel->setActiveSheetIndex(0);
$asheet = $objPHPExcel->getActiveSheet();
$table = '<table></table>'; //put your table
$tmpfile = tempnam(sys_get_temp_dir(), 'html');
file_put_contents($tmpfile, $table);
$excelHTMLReader = PHPExcel_IOFactory::createReader('HTML');
$excelHTMLReader->loadIntoExisting($tmpfile, $objPHPExcel);
unlink($tmpfile);
// sheet 2
$objPHPExcel2 = new PHPExcel();
$objPHPExcel2->setActiveSheetIndex(0);
$asheet2 = $objPHPExcel2->getActiveSheet();
$table2 = '<table></table>'; //put your another table
$tmpfile2 = tempnam(sys_get_temp_dir(), 'html');
file_put_contents($tmpfile2, $table2);
$excelHTMLReader2 = PHPExcel_IOFactory::createReader('HTML');
$excelHTMLReader2->loadIntoExisting($tmpfile2, $objPHPExcel2);
unlink($tmpfile2);
//$objPHPExcel->addSheet($asheet2, 0);
$objPHPExcel->addExternalSheet($asheet2, 0); //copy sheet2 in first objPHPExcel
header("Content-Type:application/vnd.ms-excel");
header("Content-Disposition:attachment;filename=simple.xls");
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output');