您的位置:首页技术文章
文章详情页

mysql - thinkphp3.2 csv批量导入上万条数据时报错超时,请问有什么好的办法处理?

【字号: 日期:2022-06-12 09:40:12浏览:12作者:猪猪

问题描述

$filename = $_FILES[’data’][’tmp_name’]; $handle = fopen($filename, ’r’); $result = input_csv($handle); //解析csv $length = count($result); for ($i = 0; $i < $length; $i++) { $ip = $result[$i][0]; $port = $result[$i][1]; //... $data = array('ip' => $ip,'port' => $port,//... ); $count = $Property->where($where)->find(); if($count){$query = $Property->where($where)->save($data); }else{$query = $Property->add($data); }}fclose($result); $this->success(’导入成功!’);exit();

上传CSV文件,执行后就报错了,求大神支招ps:必须要判定IP+端口唯一,存在则覆盖,不存在则添加。

mysql - thinkphp3.2 csv批量导入上万条数据时报错超时,请问有什么好的办法处理?

问题解答

回答1:

两种,一种是设置超时时间限制,还有一种就是把它转化成sql最后拿到数据库执行,我推荐第二种,这种性能好