利用PHP生成CSV文件简单示例

前言

csv 文件其实和excel文件一样,都是表格类型.但PHP生成csv要比生成excel文件要简单的多,生成csv文件其实就是把以 , 号为分割符的字符串存成 .csv为扩展名的文件。

因为逻辑不难,具体请看下面的代码和注释。

<?php /** * Created by PhpStorm. * User: chenyanphp@qq.com * Date: 2016/12/21 0021 * Time: 下午 12:08 */ // 头部标题 $csv_header = ['名称','性别','年龄']; // 内容 $csv_body = [ ['张三','男','13'], ['李四','女','13'], ['王五','男','13'], ['赵六','未知','13'] ]; /** * 开始生成 * 1. 首先将数组拆分成以逗号(注意需要英文)分割的字符串 * 2. 然后加上每行的换行符号,这里建议直接使用PHP的预定义 * 常量PHP_EOL * 3. 最后写入文件 */ // 打开文件资源,不存在则创建 $fp = fopen('test.csv','a'); // 处理头部标题 $header = implode(',', $csv_header) . PHP_EOL; // 处理内容 $content = ''; foreach ($csv_body as $k => $v) { $content .= implode(',', $v) . PHP_EOL; } // 拼接 $csv = $header.$content; // 写入并关闭资源 fwrite($fp, $csv); fclose($fp);

效果:

根目录下生成的test.csv文件,打开如下图:

Ok! 生成成功。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

时间: 2024-10-01 23:30:08

利用PHP生成CSV文件简单示例的相关文章

利用PHP生成CSV文件简单示例_php实例

前言 csv 文件其实和excel文件一样,都是表格类型.但PHP生成csv要比生成excel文件要简单的多,生成csv文件其实就是把以 , 号为分割符的字符串存成 .csv为扩展名的文件. 因为逻辑不难,具体请看下面的代码和注释. <?php /** * Created by PhpStorm. * User: chenyanphp@qq.com * Date: 2016/12/21 0021 * Time: 下午 12:08 */ // 头部标题 $csv_header = ['名称','性

java生成csv文件 自己定义表头、用sql查询内容,把内容和表头放到表里 , 最好有代码示例

问题描述 java生成csv文件 自己定义表头.用sql查询内容,把内容和表头放到表里 , 最好有代码示例 30C java生成csv文件 ,自己定义表头.用sql查询内容,把内容和表头放到表里 , 最好有代码示例 解决方案 csv文件最简单了,就是文本格式,逗号分割字段,换行分割记录.你自己sql循环,然后写文件,要表头的话,先输出一行作为表头就可以了. 解决方案二: 我要测试导出csv文件,response.getOutputStream()报空指针异常 解决方案三: 哪位大神有关于导出cs

在Python的Django框架中用流响应生成CSV文件的教程

  这篇文章主要介绍了在Python的Django框架中用流响应生成CSV文件的教程,作者特别讲到了防止CSV文件中的中文避免出现乱码等问题,需要的朋友可以参考下 在Django里,流式响应StreamingHttpResponse是个好东西,可以快速.节省内存地产生一个大型文件. 目前项目里用于流式响应的一个是Eventsource,用于改善跨系统通讯时用户产生的慢速的感觉.这个不细说了. 还有一个就是生成一个大的csv文件. 当Django进程处于gunicorn或者uwsgi等web容器中

php生成csv文件并下载及问题总结

例子,生成csv文件并下载 //要生成csv文件的数组 $csvArr=array(); $csvArr[]=array('用户编号1','上班日期1','签到时间1','签退时间1'); $csvArr[]=array('用户编号2','上班日期2','签到时间2','签退时间2') download_send_headers("data_export_" . date("Y-m-d") . ".csv"); $head=array('用户编号

C# 生成.CSV文件

问题描述 想要用C#生成".csv"文件.目的是生成后的文件用excel打开,看到的是输入内容按照单元格整齐显示,并且看不到逗号:用记事本打开看到的是一行一行的内容,每行的内容都用逗号隔开.现在的代码如下StreamWritersw=newStreamWriter("d:\1.csv",true,System.Text.Encoding.Unicode);{for(inti=0;i<ds.Tables["StationInfo"].Rows

PHP生成CSV文件用Excel打开乱码问题

百度查证后得知 PHP生成UTF-8编码的CSV文件用Excel打开中文显示乱码,是由于输出的CSV文件中没有BOM. 我们只要简单处理一下即可 那么如何在PHP中输出BOM呢? 在所有内容输出之前  代码如下 复制代码 print(chr(0xEF).chr(0xBB).chr(0xBF)); 例.php生成csv时我们可以这样  代码如下 复制代码 <?php $now = gmdate("D, d M Y H:i:s"); header("Expires: Tue

生成CSV文件时,根据A,B两个字段值可以确定C字段值,使用哪种数据结构来保存这三个字段?

问题描述 由一个csv文件(有三个字段EPS_BROKER1,EPS_DATE1和EPS_VALUE1)改写生成另一个csv文件时,根据EPS_BROKER1,EPS_DATE1可以确定EPS_VALUE1值,各位大牛帮忙看下使用哪种数据结构来保存这三个字段?原CSV文件格式:EPS_BROKER1117117881545EPS_DATE103/10/201103/11/201103/16/2011EPS_VALUE11.077931.066141.34071目标CSV文件格式:EPS_BROK

asp下利用xml打包网站文件_XML示例

这个方法可以把整个文件夹打包到xml文件中,把这个xml文件文件和解包文件放在一起后,运行解包文件就可以把原来的文件释放出来,这样我们就可以把网站打包上传到虚拟主机,再运行解包文件就可以了.我在本地测试之选择了少部分文件,不知在文件很多的情况执行效率如何.     其实实现的思路也很简单,主要利用的是xml文件可以存放二进制数据的原理.有兴趣的朋友可以下载下面的附件研究下!! 解包文件 复制代码 代码如下: <%@LANGUAGE="VBSCRIPT" CODEPAGE=&quo

oracle中sql生成csv文件

 代码如下 复制代码 set linesize 3000; set heading off; set feedback off; set term off; set pagesize 0; set trimspool on; spool a.csv; select c1_name||','||c2_name from dual; select c1||','||c2 from tbtest spool off; 导入csv文件(如果要导入数据我们需要注意:字段数量和类型要和需要导入的一致并且顺序