如何使用 PHP 将数据库数据导出为 Excel 电子表格282


在许多情况下,您可能需要从数据库中提取数据并将其导出为 Excel 电子表格,以供进一步分析或报告。PHP 为此提供了便捷的功能,可以使用以下步骤轻松实现:

建立数据库连接

首先,您需要建立与数据库的连接。可以使用 PHP 的 mysqli 函数来实现:
```php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "myDB";
// 创建 mysqli 对象
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接
if ($conn->connect_error) {
die("连接失败:" . $conn->connect_error);
}
```

查询数据库

接下来,使用 SELECT 查询从数据库中检索所需的数据。例如,要获取表 "customers" 中的所有记录:
```php
$sql = "SELECT * FROM customers";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// 输出结果
while($row = $result->fetch_assoc()) {
echo "id: " . $row["id"] . " - Name: " . $row["name"] . " - Email: " . $row["email"] . "
";
}
} else {
echo "0 results";
}
```

创建 Excel 电子表格

使用 PHPExcel 库来创建 Excel 电子表格。您可以使用 Composer 进行安装,或从 PHPExcel 官网下载:
```php
require_once 'PHPExcel/';
// 创建一个新的 PHPExcel 对象
$objPHPExcel = new PHPExcel();
// 设置默认字体
$objPHPExcel->getDefaultStyle()->getFont()->setName('Arial')->setSize(10);
```

填写 Excel 数据

将查询到的数据库数据填写到 Excel 电子表格中:
```php
// 设置工作表的名称
$objPHPExcel->setActiveSheetIndex(0);
$objPHPExcel->getActiveSheet()->setTitle('Customers');
// 设置表头
$objPHPExcel->getActiveSheet()->setCellValue('A1', 'ID');
$objPHPExcel->getActiveSheet()->setCellValue('B1', 'Name');
$objPHPExcel->getActiveSheet()->setCellValue('C1', 'Email');
// 从查询结果中填充数据
$row_count = 2;
while($row = $result->fetch_assoc()) {
$objPHPExcel->getActiveSheet()->setCellValue('A' . $row_count, $row["id"]);
$objPHPExcel->getActiveSheet()->setCellValue('B' . $row_count, $row["name"]);
$objPHPExcel->getActiveSheet()->setCellValue('C' . $row_count, $row["email"]);
$row_count++;
}
```

保存 Excel 文件

使用 PHPExcel 提供的 IWriter 类保存 Excel 文件:
```php
// 保存 Excel 2007 文件
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('');
// 保存 Excel 95 文件
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('');
```

关闭数据库连接

最后,关闭数据库连接:
```php
$conn->close();
```

按照这些步骤,您可以轻松使用 PHP 将数据库数据导出为 Excel 电子表格,以供进一步分析或报告。PHP 提供了方便的功能,可以轻松实现数据库和 Excel 之间的集成。

2024-11-04


上一篇:PHP 获取访问地址

下一篇:用 PHP 创建强大的数据库:逐步指南