php读取数据太大&运行时间长导致500Internal Server Error错误怎么解决?
更新:HHH   时间:2023-1-7


对于数据量大的首先如果有field最好限制field,而且可以分批处理,每次取5000(固定数量)

$userCount  = D('model')->count();
    for($i = 0; $i < ceil($userCount/5000); $i++) {
        $begin    = $i * 5000;
        $end      = ($i + 1) * 5000;
        $userList = D('model')->field('key_name')->limit($begin, $end)->select();
        foreach ($userList as $value) {
            ...
        }
    }

最后大批量的数据最好文件开头加上:
set_time_limit(0); //执行时间无限
ini_set('memory_limit', '-1'); //内存无限

返回web开发教程...