php 批量数据插入数据表

我做了个信息群发功能,由于接收的用户量大,所以要做个分批信息插入数据表的方法,比如说我1000条数据每次插入10条数据,每次插入的数据时可控的

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秒';
    }
}

追问

为啥 $write_count -=1 ?

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-01-23
$params = array(‘value’=>’50′);
set_time_limit(0);
echo date(“H:i:s”);
for($i=0;$i<2000000;$i++){
$connect_mysql->insert($params);
};
echo date(“H:i:s”);你看过后很简单吧以后不会可以向我一样经常到后盾人视频平台找找相关教材看看就会了,希望能帮到你,给个采纳吧谢谢
相似回答