suchen

Heim  >  Fragen und Antworten  >  Hauptteil

So schreiben Sie PHP, um jedes Mal 500 Daten zu aktualisieren

Bitte geben Sie mir einen Pseudocode.
Aktualisieren Sie 500 Daten einmal in einer Schleife.

仅有的幸福仅有的幸福2723 Tage vor887

Antworte allen(4)Ich werde antworten

  • 黄舟

    黄舟2017-06-12 09:22:44

    将要批量更新的记录推入队列,然后消费队列,记得打日志,我们做队列在于有序地执行任务,且保证每条更新是一定完成的。

    Antwort
    0
  • 怪我咯

    怪我咯2017-06-12 09:22:44

    不知道具体的使用场景,不敢瞎BB

    BB一下

    取出一个大数组之后

    $res = [];
    for ($x=0; $x<=($res/500); $x++) {
     $res = array_slice($res,0+500*$x,500);
    if($res)
    {
        update table set=value where id($res['id']);修改数据库
        foreach($res as $key=>$value)
        {
            $res[$key]['某值'] = ‘某值’;
        }
    }
    }

    Antwort
    0
  • 学习ing

    学习ing2017-06-12 09:22:44

    1.如果是同一张表,并且有某种相同特征某些数据可以使用where条件批量更新

    update table set count=count+1 where id > 1 and id < 501

    2.如果不同的表,且逻辑也不一样,那要考虑是否会超时了,如果无需用户买单的请求,可以采用fastcgi_finish_request 中断用户请求,再继续执行代码,或者采取定时任务的形式

    Antwort
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-06-12 09:22:44

    先确定总次数,然后 for 循环每次取 500 条更新就是了

    Antwort
    0
  • StornierenAntwort