对于数据量大的首先若是有field最好限制field,并且能够分批处理,每次取5000(固定数量)ide
$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'); //内存无限code