如何使用PHP导入和导出CSV文件到MySQL数据库

CSV文件(逗号分隔值文件)是一种在PHP编程中非常常用的数据交换格式。通过以下步骤,我们可以实现CSV文件的导入和导出

1. 导入CSV文件到MySQL

1.1 连接数据库

在开始处理CSV文件之前,我们需要使用mysqli_connect()函数连接到MySQL数据库。

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";
$conn = mysqli_connect($servername, $username, $password, $dbname);
?>

1.2 读取CSV文件

使用fgetcsv()函数逐行读取CSV文件的内容:

$file = fopen("data.csv", "r");
while (($data = fgetcsv($file, 1000, ",")) !== FALSE) {
    // 处理数据并插入到数据库
}
fclose($file);

1.3 数据处理与插入

通过mysqli_query()执行插入语句,将数据写入数据库:

$sql = "INSERT INTO my_table (field1, field2, field3) VALUES ('$data[0]', '$data[1]', '$data[2]')";
mysqli_query($conn, $sql);

1.4 错误处理与连接关闭

对SQL语句执行情况进行检查,处理可能出现的错误,最后关闭数据库连接。

2. 导出MySQL数据为CSV

2.1 查询数据库

执行SQL查询以提取需要导出的数据。

2.2 创建并写入CSV文件

使用fputcsv()函数将数据写入CSV文件,并配置浏览器下载行为:

header('Content-Type: text/csv');
header('Content-Disposition: attachment; filename="exported_data.csv"');
header('Pragma: no-cache');

$file = fopen('php://output', 'w');
while ($row = mysqli_fetch_assoc($result)) {
    fputcsv($file, $row);
}
fclose($file);

3. 用户界面和附加功能

index.php文件中设置用户界面,供用户选择文件上传或触发数据导出。可以加入进度条、文件大小限制及数据预览等功能。


通过掌握CSV与PHP文件操作MySQL数据库操作的基础,开发者可以快速实现CSV文件数据的导入与导出,提升数据处理的效率与便捷性。

rar 文件大小:2.49KB