如何使用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文件数据的导入与导出,提升数据处理的效率与便捷性。
2.49KB
文件大小:
评论区