用php7写一个PHPExcel导出1万行数据的功能实例
时间: 2024-02-09 18:11:49 浏览: 52
好的,下面是用 PHP 7 和 PHPExcel 库编写一个导出 1 万行数据的功能的实例的步骤:
第一步:安装 PHPExcel 库
使用 Composer 安装 PHPExcel 库,执行以下命令:
```
composer require phpoffice/phpexcel
```
第二步:查询数据
在控制器方法中查询需要导出的数据,例如:
```php
use app\index\model\User;
$users = User::limit(10000)->select()->toArray();
```
这里使用了一个简单的 User 模型来查询用户数据。
第三步:创建 Excel 文件
使用 PHPExcel 库创建一个 Excel 文件,例如:
```php
use PHPExcel;
use PHPExcel_IOFactory;
$excel = new PHPExcel();
$sheet = $excel->getActiveSheet();
// 设置表头
$sheet->setCellValue('A1', 'ID')
->setCellValue('B1', 'Name')
->setCellValue('C1', 'Email');
// 设置数据
foreach ($users as $key => $user) {
$row = $key + 2; // 数据行从第 2 行开始
$sheet->setCellValue('A' . $row, $user['id'])
->setCellValue('B' . $row, $user['name'])
->setCellValue('C' . $row, $user['email']);
}
```
这里设置了表头和数据,注意数据行从第 2 行开始。
第四步:设置 Excel 文件格式并下载
使用 PHPExcel 库设置 Excel 文件的格式,并将文件下载到客户端,例如:
```php
$filename = 'users.xlsx';
// 设置文件格式
$writer = PHPExcel_IOFactory::createWriter($excel, 'Excel2007');
$writer->save($filename);
// 下载文件
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="' . $filename . '"');
header('Cache-Control: max-age=0');
readfile($filename);
unlink($filename); // 删除文件
```
这里将 Excel 文件保存为 .xlsx 格式,并将文件下载到客户端。
以上就是用 PHP 7 和 PHPExcel 库编写一个导出 1 万行数据的功能的实例的步骤,希望对你有帮助。