Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk melaksanakan eksport pertanyaan php ke excel
Dalam era teknologi moden dan data besar, pemprosesan data telah menjadi pautan yang amat diperlukan dan penting dalam pelbagai industri dan perusahaan Terutamanya dalam bidang Internet, pemprosesan data merupakan isu utama. Sebagai bahasa pembangunan WEB, PHP berkuasa dan digunakan secara meluas. Dari segi pemprosesan data, PHP juga boleh memberikan sokongan yang baik. Artikel ini akan memperkenalkan cara menggunakan PHP untuk menanyakan data dan mengeksportnya ke Excel.
1. Pangkalan data pertanyaan PHP
Dalam PHP, proses menanyakan pangkalan data dan mendapatkan data memerlukan penyambungan ke pangkalan data dahulu, kemudian memilih pangkalan data, dan akhirnya melaksanakan pernyataan SQL. Berbanding dengan pernyataan SQL biasa, pernyataan SQL dalam PHP perlu dilepaskan untuk mengelakkan serangan suntikan SQL.
Fungsi untuk menyambung ke pangkalan data ialah mysqli_connect(), yang mengandungi empat parameter: nama hos, nama pengguna, kata laluan dan nama pangkalan data. Jika sambungan gagal, false akan dikembalikan, jika tidak objek sambungan pangkalan data akan dikembalikan.
$conn = mysqli_connect($servername, $username, $password, $dbname); if (!$conn) { die("Connection failed: " . mysqli_connect_error()); }
Fungsi untuk memilih pangkalan data ialah mysqli_select_db(), yang mengandungi dua parameter: objek sambungan pangkalan data dan nama pangkalan data.
mysqli_select_db($conn, $dbname);
Fungsi untuk melaksanakan pernyataan SQL ialah mysqli_query(), yang mengandungi dua parameter: objek sambungan pangkalan data dan pernyataan SQL.
$sql = "SELECT * FROM `table1`"; $result = mysqli_query($conn, $sql);
Selepas melaksanakan tiga langkah di atas, objek $result akan mengandungi semua data yang ditanya.
2. Eksport Excel dengan PHP
Terdapat banyak cara untuk mengeksport Excel dengan PHP. Untuk memproses Excel, anda perlu menggunakan perpustakaan PHPExcel, yang perlu dipasang sebelum anda boleh membaca dan menulis fail Excel.
Anda boleh memasang pustaka PHPExcel melalui Komposer:
composer require phpoffice/phpexcel
atau memuat turun secara manual pakej termampat versi terkini:
https://github.com/PHPOffice/PHPExcel/releases
Selepas penyahmampatan, letakkan folder Classes dalam direktori projek , dan kemudian memperkenalkan perpustakaan PHPExcel:
require_once 'Classes/PHPExcel.php';
Jadual Excel terutamanya terdiri daripada tiga bahagian: "buku kerja", "lembaran kerja" dan "sel". PHPExcel merangkumi banyak kelas dan kaedah, menjadikannya mudah untuk mencipta, mengedit dan menyimpan jadual Excel. Berikut ialah contoh mudah:
//创建PHPExcel对象 $objPHPExcel = new PHPExcel(); //设置工作簿属性 $objPHPExcel->getProperties() ->setCreator("Creator") ->setLastModifiedBy("Last Modified By") ->setTitle("Title") ->setSubject("Subject") ->setDescription("Description") ->setKeywords("keywords") ->setCategory("Category"); //创建工作表 $objPHPExcel->setActiveSheetIndex(0); $objPHPExcel->getActiveSheet()->setTitle('Sheet1'); //添加表头 $objPHPExcel->getActiveSheet()->setCellValue('A1', 'ID'); $objPHPExcel->getActiveSheet()->setCellValue('B1', 'Name'); $objPHPExcel->getActiveSheet()->setCellValue('C1', 'Age'); $objPHPExcel->getActiveSheet()->setCellValue('D1', 'Gender'); //循环添加数据 $i = 2; while ($row = mysqli_fetch_assoc($result)) { $objPHPExcel->getActiveSheet()->setCellValue('A' . $i, $row['id']); $objPHPExcel->getActiveSheet()->setCellValue('B' . $i, $row['name']); $objPHPExcel->getActiveSheet()->setCellValue('C' . $i, $row['age']); $objPHPExcel->getActiveSheet()->setCellValue('D' . $i, $row['gender']); $i++; } //设置列宽度 $objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(20); $objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(10); //设置单元格格式 $objPHPExcel->getActiveSheet()->getStyle('A1:D1')->getFont()->setBold(true); //将表格导出为Excel文件 $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); header('Content-Type: application/vnd.ms-excel'); header('Content-Disposition: attachment;filename="export.xlsx"'); header('Cache-Control: max-age=0'); $objWriter->save('php://output'); exit;
Dalam contoh ini, objek PHPExcel pertama kali dicipta, buku kerja dan sifat lembaran kerja ditetapkan, pengepala dan data ditambah, dan kemudian lebar lajur dan unit adalah tetapkan format Grid.
Akhir sekali, eksport data objek PHPExcel ke fail Excel melalui kaedah createWriter() dalam kelas PHPExcel_IOFactory. Jenis MIME, nama fail dan pengepala kawalan cache yang betul perlu ditetapkan sebelum mengeksport.
Ringkasan
Di atas adalah langkah asas untuk menggunakan PHP untuk menanyakan pangkalan data dan mengeksport ke Excel. Sebagai bahasa pengaturcaraan yang cekap dan fleksibel, PHP menyediakan banyak kaedah mudah untuk memproses data. Menggunakan perpustakaan PHPExcel, fail Excel juga boleh dimanipulasi dengan mudah, membolehkan pemprosesan dan eksport data yang fleksibel.
Atas ialah kandungan terperinci Bagaimana untuk melaksanakan eksport pertanyaan php ke excel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!