将由HTML和PHP创build的表导出到Excel文件中

如何将PHP创build的表导出到Excel文件中? 有什么办法吗?

我其实想这样做:

说我正在查询数据库是一个PHP文件,并显示在HTML和PHP表中的结果…

该表格将根据用户正在search的内容而dynamic变化。 用户应该可以通过点击EXPORTbutton将表格保存为excel文件。

有没有在PHP的任何选项来做到这一点?

PHPExcel可能是最好的图书馆。 如果你下载它,有大量的例子几乎肯定会显示你想要做的。

一个简单的例子如下:

$objPHPExcel = new PHPExcel(); $objWorksheet = $objPHPExcel->getActiveSheet(); $objWorksheet->fromArray( array( array('', 'Rainfall (mm)', 'Temperature (°F)', 'Humidity (%)'), array('Jan', 78, 52, 61), array('Feb', 64, 54, 62), array('Mar', 62, 57, 63), array('Apr', 21, 62, 59), array('May', 11, 75, 60), array('Jun', 1, 75, 57), array('Jul', 1, 79, 56), array('Aug', 1, 79, 59), array('Sep', 10, 75, 60), array('Oct', 40, 68, 63), array('Nov', 69, 62, 64), array('Dec', 89, 57, 66), ) ); $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); $objWriter->save('sheet.xlsx'); 

或者,你可以很容易地导出为一个CSV ,然后用户可以毫无困难地在Excel中打开(虽然技术上并不是一个Excel文档 – 有一些限制)。

将表格存储在可变数据库中

并写入文件

例如:

 $content = "";//in content you must have table data $file = fopen("file location", "w"); fwrite($file ,$content); 

这应该很容易

如果有最终用户将查看该文件,请使用已经使用PHPExcel提供的答案

如果你做数据访问,然后使用CSV。

https://php.net/manual/en/function.fputcsv.php

 $list = array ( array('aaa', 'bbb', 'ccc', 'dddd'), array('123', '456', '789'), array('"aaa"', '"bbb"') ); $fp = fopen('file.csv', 'w'); foreach ($list as $fields) { fputcsv($fp, $fields); } fclose($fp); 

如果您不需要公式或特殊function,则可以轻松输出CSV文件(该Excel可以打开)。 如果你有一个像一个谜题演示的数组,就可以使用

 $string = ""; foreach ($array as $row) $string .= implode(',', $row) . "\n"; file_put_contents("filename.csv", $string); 

看一下这个class级。 它能够从HTML表格创build多张excel文件。

https://github.com/GSTVAC/HtmlExcel

 $xls = new HtmlExcel(); $xls->addSheet("Names", $names); $xls->headers(); echo $xls->buildFile();