layui表格导入和导出excel php后端如何编写代码
时间: 2024-04-19 12:17:03 浏览: 130
layui数据表格导出Excel插件
首先,需要安装 PHPExcel 扩展,可以使用 Composer 安装或手动下载安装。
接下来就是编写导入和导出 Excel 的代码了,以下是一个基本的示例:
导出 Excel:
```php
<?php
require_once 'path/to/PHPExcel/Classes/PHPExcel.php';
// 创建新的 Excel 对象
$objPHPExcel = new PHPExcel();
// 设置 Excel 文件属性
$objPHPExcel->getProperties()
->setCreator('Your Name')
->setLastModifiedBy('Your Name')
->setTitle('Title')
->setSubject('Subject')
->setDescription('Description')
->setKeywords('Keywords')
->setCategory('Category');
// 设置工作表标题
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A1', 'Column 1')
->setCellValue('B1', 'Column 2')
->setCellValue('C1', 'Column 3');
// 填充数据
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A2', 'Data 1')
->setCellValue('B2', 'Data 2')
->setCellValue('C2', 'Data 3');
// 设置表格格式
$objPHPExcel->getActiveSheet()->getStyle('A1:C1')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(20);
// 下载 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');
```
导入 Excel:
```php
<?php
require_once 'path/to/PHPExcel/Classes/PHPExcel.php';
// 读取 Excel 文件
$inputFileName = 'path/to/file.xlsx';
$objPHPExcel = PHPExcel_IOFactory::load($inputFileName);
// 获取第一个工作表
$worksheet = $objPHPExcel->getActiveSheet();
// 获取行数和列数
$highestRow = $worksheet->getHighestRow();
$highestColumn = $worksheet->getHighestColumn();
$highestColumnIndex = PHPExcel_Cell::columnIndexFromString($highestColumn);
// 遍历行数据
for ($row = 1; $row <= $highestRow; $row++) {
// 遍历列数据
for ($col = 0; $col < $highestColumnIndex; $col++) {
$cell = $worksheet->getCellByColumnAndRow($col, $row);
$value = $cell->getValue();
// 处理单元格数据
// ...
}
}
```
以上是一个简单的示例,具体的代码需要根据实际情况进行修改和完善。
阅读全文