DEMO:
<?php
// 批量插入DEMO
$dbhost="127.0.0.1";
$dbuser="root";
$dbpwd="123456";
$dbname="testa";
$option[PDO::MYSQL_ATTR_INIT_COMMAND]='SET SESSION sql_mode =REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(@@sql_mode,"STRICT_ALL_TABLES,", ""),",STRICT_ALL_TABLES", ""),"STRICT_ALL_TABLES", ""),"STRICT_TRANS_TABLES,", ""),",STRICT_TRANS_TABLES", ""),"STRICT_TRANS_TABLES", "")';
$option['PDO::ATTR_ERRMODE']=PDO::ERRMODE_EXCEPTION;
$pdo = new PDO("mysql:host={$dbhost};dbname={$dbname}", $dbuser, $dbpwd, $option);
$data = [
['strs'=>'abc','time'=>1],
['strs'=>'abc2','time'=>2],
['strs'=>'abc3','time'=>3],
['strs'=>'abc4','time'=>4],
['strs'=>'abc5','time'=>5],
['strs'=>'abc6','time'=>6],
['strs'=>'abc7','time'=>7],
['strs'=>'abc8','time'=>8],
['strs'=>'abc9','time'=>9],
['strs'=>'abc10','time'=>10],
['strs'=>'abc11','time'=>11],
['strs'=>'abc12','time'=>12],
['strs'=>'abc13','time'=>13],
['strs'=>'abc14','time'=>14],
['strs'=>'abc15','time'=>15],
['strs'=>'abc16','time'=>16],
['strs'=>'abc17','time'=>17],
['strs'=>'abc18','time'=>18],
['strs'=>'abc19','time'=>19],
['strs'=>'abc20','time'=>20],
['strs'=>'abc21','time'=>21],
['strs'=>'abc22','time'=>22],
['strs'=>'abc23','time'=>23],
['strs'=>'abc24','time'=>24],
['strs'=>'abc25','time'=>25],
['strs'=>'abc26','time'=>26],
['strs'=>'abc27','time'=>27],
];
//array_chunk 实现的分页
$data_paged = array_chunk($data, 10);
foreach ($data_paged as $a_page){
$datafields_tmp = array_keys($a_page[0]);
$datafields = '('.implode(',',$datafields_tmp).')';
$values_tmp = [];
foreach($a_page as $d){
$values_tmp[]="('".implode("','",array_values($d))."')";
}
$values = implode(',',$values_tmp);
$tables = 'exceptions';
$sql = "insert into {$tables} {$datafields} values {$values}";
$pdo->query($sql);
}
echo "good";
// array_slice 实现的分页
$total = count( $data );
$limit = 10;
$totalPages = ceil( $total/ $limit );
for ($page = 1 ; $page <=$totalPages ; $page++){
$offset = ($page - 1) * $limit;
if( $offset < 0 )
{
$offset = 0;
}
$a_page = array_slice( $data, $offset, $limit );
$datafields_tmp = array_keys($a_page[0]);
$datafields = '('.implode(',',$datafields_tmp).')';
$values_tmp = [];
foreach($a_page as $d){
$values_tmp[]="('".implode("','",array_values($d))."')";
}
$values = implode(',',$values_tmp);
$tables = 'exceptions';
$sql = "insert into {$tables} {$datafields} values {$values}";
$pdo->query($sql);
}
echo "good1";