Comment utiliser PHP et UniApp pour implémenter l'importation et l'exportation de données Excel
L'importation et l'exportation de données sont une exigence que nous rencontrons souvent dans le développement Web. En tant que format de données couramment utilisé, Excel peut afficher clairement les données sous forme de tableau et présente une compatibilité élevée, ce qui en fait le choix de nombreuses personnes. Cet article expliquera comment utiliser PHP et UniApp pour importer et exporter des données dans Excel respectivement.
Tout d’abord, voyons comment importer des données dans Excel via PHP.
Peut être installé via Composer, ajoutez le code suivant au fichier composer.json :
{ "require": { "phpoffice/phpexcel": "^1.8" } }
Puis exécutez composer install
dans la ligne de commande pour terminer l'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' }); } }); } }); } } }
Voyons comment exporter des données vers Excel via 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' }); } }); } } }
Grâce aux étapes ci-dessus, nous pouvons facilement implémenter la fonction d'importation et d'exportation Excel des données. Que ce soit sur le backend PHP ou sur le frontend UniApp, cette tâche peut être accomplie via des bibliothèques et des interfaces pertinentes. J'espère que cet article pourra vous être utile !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!