1
2
3
4
5
6
<form ........
<input type="text" name="haoma[]" />
<input type="text" name="haoma[]" />
<input type="text" name="haoma[]" />
....
第N个
foreach($_POST['haoma'] as $v){
$sql="insert into haoma values('',$v)"
.......
}
当然这样写一条一条的效率是会慢,再改一下
foreach($_POST['haoma'] as $v){
$values.="('',$v),"
}
$values=substr($values,0,strlen($values)-1)
$sql="insert into haoma values $values"
......
下面的query我就不写了
if ($strleng>100){//如果大于100条就每次写入100,休息1秒,然后继续写,直到写完为止
$write_count = floor($strleng/100)
while ($write_count > 0){
for ($i=0$i<100$i++){
echo "INSERT INTO tbl_name (a,b,c) VALUES(1,2,3)"//写100次就休息
}
//echo "INSERT INTO tbl_name (a,b,c) VALUES(1,2,3),(4,5,6),(7,8,9)"这样可以一次插入多条数据,效率更高
//参考https://dev.mysql.com/doc/refman/5.7/en/insert.html
$write_count -=1
sleep(1)
echo '休息1秒'
}
}
PHP框架LaravelEloquentORM批量插入数据是通过传入数组实现的。比如:DB::table('users')->insert(array(array('email'=>'[email protected]','votes'=>0),array('email'=>'[email protected]','votes'=>0),))以上是 *** 作表users,执行insert语句,参数是一个数组,封装了两条数据,这里可以自定义数据,insert内部就编程批量插入了。然后调用save方法:publicstaticfunctioncreate(array$attributes){$model=newstatic($attributes)$model->save()return$model}欢迎分享,转载请注明来源:内存溢出
评论列表(0条)