实现将数据以Excel表格形式导出,需要进行以下几个步骤:
- 在PHP中编写自定义函数,将数据以Excel格式输出,这里需要运用到PHP的PHPExcel库。
- 调用自定义函数,读取需要导出的数据。
- 生成Excel表格,并将读取的数据插入到Excel表格中。
- 将生成的Excel表格保存到服务器本地,或者提供下载链接。
下面分别进行详细讲解:
步骤一:在PHP中编写自定义函数
PHPExcel是一个强大的PHP类库,可以方便地操作Excel文件,生成Excel表格,添加样式和格式等。以下是自定义函数的示例代码:
function exportExcel($data, $title = null, $filename = "data")
{
// 引入PHPExcel库
require_once('../PHPExcel/PHPExcel.php');
$objPHPExcel = new PHPExcel();
// 设置当前的sheet
$objPHPExcel->setActiveSheetIndex(0);
// 设置标题行
if (!empty($title)) {
$column = 'A';
foreach ($title as $k => $v) {
$objPHPExcel->getActiveSheet()->setCellValue($column . '1', $v);
$column++;
}
}
// 添加数据行
$row = 2;
foreach ($data as $key => $value) {
$column = 'A';
foreach ($value as $k => $v) {
$objPHPExcel->getActiveSheet()->setCellValue($column . $row, $v);
$column++;
}
$row++;
}
// 导出Excel表格
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="' . $filename . '.xlsx"');
header('Cache-Control: max-age=0');
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('php://output');
}
以上代码中,函数的参数$data为需要导出的数据,$title为Excel表格的标题行,$filename为导出文件的文件名(不包含文件类型后缀),函数中最后三行代码实现导出Excel表格的操作。
步骤二:调用自定义函数
调用自定义函数需要先读取需要导出的数据,这里以从MySQL数据库中读取数据为例。以下是调用自定义函数的示例代码:
// 连接MySQL数据库
$conn = mysqli_connect('localhost', 'root', 'password', 'database');
// 查询MySQL数据
$sql = "SELECT * FROM `table`";
$result = mysqli_query($conn, $sql);
$data = array();
while ($row = mysqli_fetch_assoc($result)) {
$data[] = $row;
}
// 关闭MySQL连接
mysqli_close($conn);
// 导出Excel表格
$title = array('ID', '姓名', '年龄', '性别');
exportExcel($data, $title, '用户数据');
以上代码中,首先连接MySQL数据库,通过执行SQL语句查询数据并读取到$data数组中,然后调用自定义函数exportExcel将$data数组作为参数传入即可。
步骤三:生成Excel表格
生成Excel表格的代码在自定义函数exportExcel中已经实现,这里不再赘述。
步骤四:保存或提供下载链接
在自定义函数exportExcel中,最后使用$objWriter->save('php://output')即可将生成的Excel表格输出到浏览器供用户下载。如果需要保存到服务器本地,可以将save方法的参数改为文件路径。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:php 自定义函数实现将数据 以excel 表格形式导出示例 - Python技术站