Bagaimana untuk mengeksport dan mengimport data dalam PHP?
PHP ialah bahasa skrip pelbagai guna yang biasa digunakan untuk membangunkan aplikasi web. Semasa proses pembangunan, import dan eksport data adalah fungsi yang sangat penting. Artikel ini akan memperkenalkan cara menggunakan PHP untuk mengeksport dan mengimport data.
1. Eksport data
Pertama, sambung ke pangkalan data dan tanya data yang perlu dieksport.
// 连接到数据库 $conn = mysqli_connect('localhost', 'username', 'password', 'database'); // 查询需要导出的数据 $query = "SELECT * FROM table_name"; $result = mysqli_query($conn, $query);
Kemudian, buat fail dan tulis data yang ditanya pada fail.
// 创建一个CSV文件 $file = fopen('export.csv', 'w'); // 写入表头 $header = array('字段1', '字段2', '字段3'); fputcsv($file, $header); // 写入数据 while ($row = mysqli_fetch_assoc($result)) { fputcsv($file, $row); } // 关闭文件 fclose($file);
Akhir sekali, fail CSV yang dieksport akan disimpan dalam direktori yang sama dengan fail PHP dan mengandungi data yang ditanya.
// 导入PHPExcel类库 require_once 'PHPExcel/Classes/PHPExcel.php'; // 创建一个Excel对象 $objPHPExcel = new PHPExcel();
Kemudian, sambungkan ke pangkalan data dan tanya data yang perlu dieksport.
// 连接到数据库 $conn = mysqli_connect('localhost', 'username', 'password', 'database'); // 查询需要导出的数据 $query = "SELECT * FROM table_name"; $result = mysqli_query($conn, $query);
Seterusnya, tulis data yang ditanya ke dalam fail Excel.
// 设置表头 $objPHPExcel->setActiveSheetIndex(0) ->setCellValue('A1', '字段1') ->setCellValue('B1', '字段2') ->setCellValue('C1', '字段3'); // 逐行写入数据 $row = 2; while ($data = mysqli_fetch_assoc($result)) { $objPHPExcel->setActiveSheetIndex(0) ->setCellValue('A'.$row, $data['字段1']) ->setCellValue('B'.$row, $data['字段2']) ->setCellValue('C'.$row, $data['字段3']); $row++; } // 导出Excel文件 $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); $objWriter->save('export.xls');
Akhir sekali, fail Excel yang dieksport akan disimpan dalam direktori yang sama dengan fail PHP dan mengandungi data yang ditanya.
2. Import data
Import data adalah bertentangan dengan eksport data, mengimport data daripada fail luaran ke dalam pangkalan data. Berikut ialah langkah untuk melaksanakan:
// 连接到数据库 $conn = mysqli_connect('localhost', 'username', 'password', 'database');
Kemudian, baca data dalam fail CSV dan masukkan ke dalam pangkalan data.
// 打开CSV文件 $file = fopen('import.csv', 'r'); // 循环读取CSV文件中的每一行数据 while (($data = fgetcsv($file)) !== FALSE) { // 将数据插入到数据库中 $query = "INSERT INTO table_name (字段1, 字段2, 字段3) VALUES ('$data[0]', '$data[1]', '$data[2]')"; mysqli_query($conn, $query); } // 关闭文件 fclose($file);
Akhir sekali, data dari fail CSV akan dimasukkan ke dalam pangkalan data.
// 连接到数据库 $conn = mysqli_connect('localhost', 'username', 'password', 'database');
Kemudian, muatkan fail Excel dan baca data di dalamnya.
// 加载Excel文件 $objPHPExcel = PHPExcel_IOFactory::load('import.xls'); // 获取第一个工作表 $sheet = $objPHPExcel->getActiveSheet(); // 循环读取每一行数据 foreach ($sheet->getRowIterator() as $row) { $rowData = array(); // 循环读取每一列数据 foreach ($row->getCellIterator() as $cell) { $rowData[] = $cell->getValue(); } // 将数据插入到数据库中 $query = "INSERT INTO table_name (字段1, 字段2, 字段3) VALUES ('$rowData[0]', '$rowData[1]', '$rowData[2]')"; mysqli_query($conn, $query); }
Akhir sekali, data dalam fail Excel akan dimasukkan ke dalam pangkalan data.
Melalui langkah di atas, kami boleh mengeksport dan mengimport data dalam PHP. Sama ada mengeksport ke fail CSV atau fail Excel, penghantaran data merentas platform dan merentas sistem boleh dicapai dengan mudah. Pada masa yang sama, melalui import data, kami boleh mengimport data dari fail luaran dengan cepat ke dalam pangkalan data untuk memudahkan pemprosesan dan analisis data seterusnya.
Atas ialah kandungan terperinci Bagaimana untuk melaksanakan eksport dan import data dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!