public function exportExcel(){
header('Content-type:application/vnd.ms-excel');
header("Content-Disposition:attachment;fileName=wordList.xls");
header('Cache-Control: max-age=0');
$count=100000000;
$limit=500;
$page=ceil($count/$limit);
for ($i=1;$i<=$page;$i++){
$forPage=($i-1)*$limit;
$infos=ModTable::query()->take($limit)
->offset($forPage)->get()->toArray();
if (!infos){
break;
}
foreach ($infos as $info){
echo $info['id']."\t".$info['message']."\t".$info['property']."\n";
}
sleep(1);
}
}
没有什么需要注意,只需要修改header头,以及注意表格对应的是\n,我写了PHP_EOL发现没有起到换行作用,所以还是写原生的\n就可以了。
其他语言也都适用,无非是语法糖不一样。