由于得推网手册编辑的时候需要用到批量更新,在文章数量较多的时候,通过循环更新容易引起性能问题。
所以我们需要使用到SQL批量更新
SQL:insert into ...on duplicate key update
PHP写法
if(!empty($updata)){
$sql=" insert into ".table('article')."(id,pid,title,orderindex) values ";
foreach($updata as $k=>$v){
if($k>0){
$sql.=",";
}
$sql.="({$v['id']},{$v['pid']},'{$v['title']}',{$v['orderindex']}) ";
}
$sql.="on duplicate key update pid=values(pid),title=values(title),orderindex=values(orderindex);";
M("article")->query($sql);
}