现在需要将csv文件里的所有内容读取并插入到数据库
现在需要将csv文件里的所有内容读取并插入到数据库
你参考phpexcel这个类库看看
$file = fopen('xxx.csv', 'r');
while($data = fgetcsv($file)) {
$result [] = $data;
}
//$result数组就是CVS的内容啦,把$result存到数据库就好。
fclose($file);先用fgetcsv把CSV文件转成一个数组,然后开启事务,循环插入,代码示例如下:
query('SET AUTOCOMMIT=0');
$db->query('START TRANSACTION');
foreach($arr as $row) {
$stmt = $db->prepare('INSERT INTO posts (id, post_title, post_content) VALUES (?,?,?)');
$stmt->bind_param('iss', $row[0], $row[1], $row[2]); //这里假设每行内容分别为ID,标题和内容
$stmt->execute();
//如果插入失败,改为更新
if($stmt->affected_rows == 0 || $stmt->affected_rows == -1) {
$stmt = $db->prepare('UPDATE posts SET post_title = ?, post_content = ? WHERE id = ?');
$stmt->bind_param('ssi', $row[1], $row[2], $row[0]);
$stmt->execute();
if($stmt->affected_rows == 0 || $stmt->affected_rows == -1) {
echo 'Import '.$row[0].' failed!'."\n";
}
}
}
$db->query('COMMIT');
$db->query('SET AUTOCOMMIT=1');
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号