PHP百万级数据导出csv格式OR文本格式

废话不说,先来上一个小小的DEMO

<?php
	header('Content-Type: text/csv');
    header('Content-Transfer-Encoding: binary');
	for($i=0;$i<500000;$i++){
		echo "this is a test \n";
	}
?>

将以上代码保存为一个PHP文件,然后执行,你会得到一个50万行记录的文件。当然扩展名是php.以上代码是分析了PhpMyAdmin后得到的超级简易版。

有了这个思路就相对简单了,首先你要超文件头。

 header('Content-Description: File Transfer');
        header('Content-Disposition: attachment; filename="' . $this->fileName . '"');
	header('Content-Type: text/csv');
        header('Content-Transfer-Encoding: binary');

然后就是遍历你的数据库,将所有的内容echo即可。如果你对csv格式不了解的话,建议先普及一下。

首页echo表头

echo '列1,列2,列3';
echo chr(10);

接着把所有的记录依次echo即可。

foreach($array){
echo 'a1,a2,a3';
echo chr(10);
}

上面的循环就是你遍历数据库的过程,这里不同的项目有不同的规则就不再描述了。

因为开始已经声明了文件头,所以你直接echo,当你echo完了浏览器也认为你下载完成了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值