PHP CI框架使用PHPExcel接收上传的Excel文件
- 下载PHPExcel
PHPExcel是一个用于处理Excel文件的PHP库,可以从官网下载最新的版本。下载完毕后,将PHPExcel文件夹复制到您的项目中。
- 创建一个上传文件的表单
在HTML文件中创建一个表单,使用户可以上传Excel文件。
<form method="post" enctype="multipart/form-data">
<input type="file" name="excel_file">
<input type="submit" value="Upload">
</form>
- 处理上传的Excel文件
在处理上传的Excel文件之前,需要检查是否有文件上传,并确保上传文件的类型为Excel文件。
if(isset($_FILES['excel_file']['name'])) {
$file_name = $_FILES['excel_file']['name'];
$file_type = $_FILES['excel_file']['type'];
$file_size = $_FILES['excel_file']['size'];
$file_tmp = $_FILES['excel_file']['tmp_name'];
if($file_type == "application/vnd.ms-excel" || $file_type == "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet") {
move_uploaded_file($file_tmp, "uploads/".$file_name);
}
}
- 使用PHPExcel读取Excel文件
使用PHPExcel读取上传的Excel文件,并将其转换为PHP数组。
require_once 'PHPExcel/PHPExcel.php';
$file_name = "uploads/".$file_name;
$excel = PHPExcel_IOFactory::load($file_name);
$excel->setActiveSheetIndex(0);
$worksheet = $excel->getActiveSheet();
$rows = array();
foreach ($worksheet->getRowIterator() as $row) {
$cellIterator = $row->getCellIterator();
$cellIterator->setIterateOnlyExistingCells(FALSE);
$cells = array();
foreach ($cellIterator as $cell) {
$cells[] = $cell->getValue();
}
$rows[] = $cells;
}
- 处理Excel数据
在得到Excel数据后,您可以根据需要对其进行处理和操作。例如,您可以将数据插入数据库或将其导出为不同的格式。
foreach($rows as $row) {
// 将数据插入数据库
$sql = "INSERT INTO table_name (column1, column2, column3) VALUES ('".$row[0]."', '".$row[1]."', '".$row[2]."')";
$result = mysqli_query($conn, $sql);
}
// 将Excel数据导出为CSV文件
$file = fopen("export.csv","w");
foreach ($rows as $row) {
fputcsv($file, $row);
}
fclose($file);
``
原文地址: https://www.cveoy.top/t/topic/fptx 著作权归作者所有。请勿转载和采集!