Home > Article > Backend Development > How to use PHP and UniApp to import and export data in Excel
How to use PHP and UniApp to implement Excel import and export of data
Importing and exporting data is a requirement we often encounter in web development. As one of the commonly used data formats, Excel can clearly display data in tabular form and has high compatibility, making it the choice of many people. This article will introduce how to use PHP and UniApp to import and export data in Excel respectively.
First, let’s look at how to import data into Excel through PHP.
Can be installed through Composer, add the following code to the composer.json file:
{ "require": { "phpoffice/phpexcel": "^1.8" } }
Then execute composer install
in the command line to complete the installation .
<?php require 'vendor/autoload.php'; use PhpOfficePhpSpreadsheetIOFactory; if ($_FILES['file']['error'] == 0) { $file = $_FILES['file']['tmp_name']; $reader = IOFactory::createReader('Xlsx'); $spreadsheet = $reader->load($file); $worksheet = $spreadsheet->getActiveSheet(); // 获取数据并处理 $data = []; foreach ($worksheet->getRowIterator() as $row) { $rowData = []; foreach ($row->getCellIterator() as $cell) { $rowData[] = $cell->getValue(); } $data[] = $rowData; } // 处理数据 // ... // 返回处理结果 echo json_encode([ 'status' => 1, 'message' => '上传成功' ]); } else { echo json_encode([ 'status' => 0, 'message' => '上传失败' ]); } ?>
export default { methods: { importExcel() { uni.chooseMessageFile({ count: 1, success: (res) => { const tempFilePath = res.tempFiles[0].path; uni.uploadFile({ url: 'http://localhost/import.php', filePath: tempFilePath, name: 'file', success: (res) => { const data = JSON.parse(res.data); if (data.status === 1) { uni.showToast({ title: '导入成功', icon: 'success' }); } else { uni.showToast({ title: '导入失败', icon: 'none' }); } }, fail: () => { uni.showToast({ title: '上传失败', icon: 'none' }); } }); } }); } } }
Let’s look at how to export data to Excel through UniApp.
<?php require 'vendor/autoload.php'; use PhpOfficePhpSpreadsheetSpreadsheet; use PhpOfficePhpSpreadsheetWriterXlsx; // 获取数据 $data = [ ['name', 'age', 'gender'], ['Tom', 20, 'Male'], ['Lisa', 25, 'Female'], // ... ]; // 创建Excel文件 $spreadsheet = new Spreadsheet(); $worksheet = $spreadsheet->getActiveSheet(); $worksheet->fromArray($data); // 下载文件 $writer = new Xlsx($spreadsheet); header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); header('Content-Disposition: attachment;filename="export.xlsx"'); $writer->save('php://output'); ?>
export default { methods: { exportExcel() { uni.downloadFile({ url: 'http://localhost/export.php', success: (res) => { uni.saveFile({ tempFilePath: res.tempFilePath, success: (res) => { uni.showToast({ title: '导出成功', icon: 'success' }); } }); }, fail: () => { uni.showToast({ title: '导出失败', icon: 'none' }); } }); } } }
Through the above steps, we can easily implement the Excel import and export functions of data. Whether on the PHP backend or the UniApp frontend, this task can be accomplished through relevant libraries and interfaces. Hope this article can be helpful to you!
The above is the detailed content of How to use PHP and UniApp to import and export data in Excel. For more information, please follow other related articles on the PHP Chinese website!