【发布时间】:2018-05-30 12:05:57
【问题描述】:
我曾尝试以 excel 格式生成报告并使用 PHPExcel 库发送电子邮件。我需要在 excel 文件中进行一些 html 对齐,所以我已经将我的输出作为 html 下载到我的本地文件夹中。但是我无法将 html 文件转换为 excel 文件,当我们尝试下面的代码时,生成的 excel 文件只显示 html 文件名而不是 html 表格内容。
$this->data['report1']=$this->report_m->get_report();
$this->data['report_details']=$this->report_m->get_report_details();
$this->load->library('PHPExcel/iofactory');
$html=$this->load->view('viewfilename',$data,TRUE);
$tmpfile = time().'.html';
file_put_contents($tmpfile, $html);
//by using above code html file created successfully
//method 1 for reading html
$reader = new PHPExcel_Reader_HTML;
$content = $reader->load($tmpfile);
$objWriter = PHPExcel_IOFactory::createWriter($content, 'Excel2007');
$objWriter->save('excelfile.xlsx');
//method 2 for reading html
$objPHPExcel = new PHPExcel();
$excelHTMLReader = IOFactory::createReader('HTML');
$excelHTMLReader->loadIntoExisting($tmpfile, $objPHPExcel);
$objPHPExcel->getActiveSheet()->setTitle('report');
$writer = IOFactory::createWriter($objPHPExcel, 'Excel2007');
$writer->save("nameoffiledrrr.xls");
unlink($tmpfile);
【问题讨论】:
-
不确定我的问题是否正确。我猜你的 mysql 表中有数据,你想生成一个 excel 报告并通过电子邮件发送?
标签: php codeigniter-3 phpexcel