mysql导入导出excel PHP代码
时间: 2023-08-31 12:27:34 浏览: 119
### 回答1:
以下是 PHP 代码示例,用于从 MySQL 数据库导出数据到 Excel 文件:
```
<?php
// 连接数据库
$conn = mysqli_connect("hostname", "username", "password", "database_name");
// 检查连接是否成功
if (!$conn) {
die("连接失败: " . mysqli_connect_error());
}
// 查询数据库并导出到 Excel 文件
$sql = "SELECT * FROM table_name";
$result = mysqli_query($conn, $sql);
// 创建 PHPExcel 对象
$objPHPExcel = new PHPExcel();
// 设置工作表
$objPHPExcel->setActiveSheetIndex(0);
$sheet = $objPHPExcel->getActiveSheet();
// 设置标题行
$sheet->setCellValue("A1", "列1");
$sheet->setCellValue("B1", "列2");
...
// 循环读取数据库中的数据
$row = 2; // 从第2行开始
while ($row_data = mysqli_fetch_assoc($result)) {
$sheet->setCellValue("A".$row, $row_data["column1"]);
$sheet->setCellValue("B".$row, $row_data["column2"]);
...
$row++;
}
// 设置保存路径
$file_name = "导出文件名.xlsx";
$save_path = "导出文件路径/".$file_name;
// 保存 Excel 文件
$objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel);
$objWriter->save($save_path);
// 关闭数据库连接
mysqli_close($conn);
// 输出下载链接
echo "文件已导出,请点击 <a href='".$save_path."'>下载</a>";
```
以下是 PHP 代码示例,用于从 Excel 文件导入数据到 MySQL 数据库:
```
<?php
// 连接数据库
$conn = mysqli_connect("hostname", "username", "
### 回答2:
MySQL导入导出Excel是将MySQL数据库中的数据导出到Excel表格或将Excel表格中的数据导入到MySQL数据库中。
导出Excel使用的是PHPExcel库,首先需要安装这个库,并在代码中引入相应的类文件。然后连接MySQL数据库,编写SQL查询语句以获取所需数据。接着创建一个Excel对象,设置表头和数据,将查询结果逐行写入到Excel中。最后将Excel保存为文件并提供下载链接。
以下是一个简单的MySQL导出Excel的PHP代码示例:
<?php
require_once 'PHPExcel/PHPExcel.php';
// 连接MySQL数据库
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 查询数据
$sql = "SELECT * FROM table";
$result = $conn->query($sql);
// 创建Excel对象
$objPHPExcel = new PHPExcel();
$objPHPExcel->getActiveSheet()->setTitle('Sheet1');
// 设置表头
$objPHPExcel->getActiveSheet()->setCellValue('A1', '列1');
$objPHPExcel->getActiveSheet()->setCellValue('B1', '列2');
$objPHPExcel->getActiveSheet()->setCellValue('C1', '列3');
// 设置数据
$row = 2;
while ($row_data = $result->fetch_assoc()) {
$objPHPExcel->getActiveSheet()->setCellValue('A' . $row, $row_data['column1']);
$objPHPExcel->getActiveSheet()->setCellValue('B' . $row, $row_data['column2']);
$objPHPExcel->getActiveSheet()->setCellValue('C' . $row, $row_data['column3']);
$row++;
}
// 保存Excel文件
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('output.xlsx');
// 提供下载链接
echo '<a href="output.xlsx">Download Excel</a>';
// 关闭数据库连接
$conn->close();
?>
导入Excel同样使用PHPExcel库,首先需要将Excel文件上传到服务器上,并在代码中获取上传文件的路径。然后连接MySQL数据库,编写插入语句以将数据插入到数据库中。接着使用PHPExcel的读取功能,读取Excel文件的内容并逐行插入到数据库中。
以下是一个简单的MySQL导入Excel的PHP代码示例:
<?php
require_once 'PHPExcel/PHPExcel.php';
// 连接MySQL数据库
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 获取上传文件路径
$file_path = 'path/to/uploaded/file.xlsx';
// 读取Excel文件
$objReader = PHPExcel_IOFactory::createReader('Excel2007');
$objPHPExcel = $objReader->load($file_path);
$sheet = $objPHPExcel->getSheet(0);
// 获取行数
$highestRow = $sheet->getHighestRow();
// 读取数据并插入数据库
for ($row = 2; $row <= $highestRow; $row++) {
$column1 = $sheet->getCell('A' . $row)->getValue();
$column2 = $sheet->getCell('B' . $row)->getValue();
$column3 = $sheet->getCell('C' . $row)->getValue();
$sql = "INSERT INTO table (column1, column2, column3) VALUES ('$column1', '$column2', '$column3')";
if ($conn->query($sql) !== TRUE) {
echo "Error: " . $sql . "<br>" . $conn->error;
}
}
// 关闭数据库连接
$conn->close();
?>
以上是一个基本的MySQL导入导出Excel的PHP代码示例,根据实际需求可以进行相应的修改和扩展。
### 回答3:
MySQL导入导出Excel可以使用PHP代码来实现。以下是一个示例代码:
导出Excel文件:
```
<?php
// 导出Excel文件
require_once 'PHPExcel.php';
// 创建一个新的PHPExcel对象
$objPHPExcel = new PHPExcel();
// 设置Excel文件的属性
$objPHPExcel->getProperties()->setCreator("Your Name")
->setLastModifiedBy("Your Name")
->setTitle("Excel Document")
->setSubject("Excel Document")
->setDescription("Test document for Excel")
->setKeywords("excel php")
->setCategory("Test");
// 添加数据到Excel文件中
$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Hello')
->setCellValue('B1', 'World!');
// 导出Excel文件
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment;filename="example.xlsx"');
header('Cache-Control: max-age=0');
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('php://output');
exit;
?>
```
导入Excel文件:
```
<?php
// 导入Excel文件
require_once 'PHPExcel.php';
// 获取上传的Excel文件
$file = $_FILES['file']['tmp_name'];
// 读取Excel文件内容
$objPHPExcel = PHPExcel_IOFactory::load($file);
// 获取第一个工作表
$sheet = $objPHPExcel->getSheet(0);
// 获取行数和列数
$highestRow = $sheet->getHighestRow();
$highestColumn = $sheet->getHighestColumn();
// 循环读取数据
for ($row = 1; $row <= $highestRow; $row++) {
// 读取每一列的数据
for ($col = 'A'; $col <= $highestColumn; $col++) {
$data = $sheet->getCell($col.$row)->getValue();
// 处理数据
}
}
// 处理完数据之后可以进行其他操作
?>
```
以上是一个简单示例的MySQL导入导出Excel的PHP代码。你可以根据自己的需求修改代码。