CSV文件是以纯文本形式存储的,一般以逗号为分隔符。

这里主要简单介绍下如何导出CSV文件。

一、浏览器导出CSV文件格式

/**

* 导出CSV文件

*/

function exportCsv()

{

// 需要导出的内容

$data = [

['name' => '张三', 'score' => '80'],

['name' => '李四', 'score' => '90'],

['name' => '王五', 'score' => '60'],

];

// 文件名,这里都要将utf-8编码转为gbk,要不可能出现乱码现象

$filename = $this->utfToGbk('导出csv文件.csv');

// 拼接文件信息,这里注意两点

// 1、字段与字段之间用逗号分隔开

// 2、行与行之间需要换行符

$fileData = $this->utfToGbk('姓名, 分数') . "\n";

foreach ($data as $value) {

$temp = $value['name'] . ',' .

$value['score'];

$fileData .= $this->utfToGbk($temp) . "\n";

}

// 头信息设置

header("Content-type:text/csv");

header("Content-Disposition:attachment;filename=" . $filename);

header('Cache-Control:must-revalidate,post-check=0,pre-check=0');

header('Expires:0');

header('Pragma:public');

echo $fileData;

exit;

}

/**

* 字符转换(utf-8 => GBK)

*/

function utfToGbk($data)

{

return iconv('utf-8', 'GBK', $data);

}

二、在服务器生成CSV文件

/**

* 下载CSV文件

*/

public function downLoadCsv()

{

// 需要导出的内容

$data = [

['name' => '张三', 'score' => '80'],

['name' => '李四', 'score' => '90'],

['name' => '王五', 'score' => '60'],

];

// 文件名,这里都要将utf-8编码转为gbk,要不可能出现乱码现象

$filename = $this->utfToGbk('生成csv文件.csv');

// 拼接文件信息,这里注意两点

// 1、字段与字段之间用逗号分隔开

// 2、行与行之间需要换行符

$fileData = $this->utfToGbk('姓名, 分数') . "\n";

foreach ($data as $value) {

$temp = $value['name'] . ',' .

$value['score'];

$fileData .= $this->utfToGbk($temp) . "\n";

}

$filePath = __DIR__ . '/' . $filename;

// 将一个字符串写入文件

file_put_contents($filePath, $fileData);

return $filePath;

}

/**

* 字符转换(utf-8 => GBK)

*/

public function utfToGbk($data)

{

return iconv('utf-8', 'GBK', $data);

}

PHP导出CSV文件出现乱码的解决方法

在做项目时碰到使用外语的情况下,我们就会使用UTF-8编码.但是,在用PHP导出CSV文件时,如果写入的数据是使用UTF-8编码的日语.韩语之类的外文,就会出现乱码. 要解决PHP生成CSV文件的乱码 ...

MySQL直接导出CSV文件,并解决中文乱码的问题

需求: 需要导出hr_users 表中的部分字段的数据,以前是用PHP写脚本,然后导出CSV文件. 在MySQL中,它自己就能导出CSV文件 ,只不过是有如下几个问题需要大家解决. 1. 生成文件不成 ...

javascript导出csv文件(excel)

这里贴出JavaScript导出csv文件(excel)的代码. /** * 导出excel * @param {Object} title 标题列key-val * @param {Object} ...

Win10使用mysqldump导出csv文件及期间遇到的问题

作为测试,我们这里使用了名为testdb的数据库中的名为test_table的表,首先我们使用如下SQL来查看其中有何数据: select * from testdb.test_table 数据如下: ...

PHP之导出CSV文件

序言 Q1:什么是csv文件? A1:csv即 comma-separated values ,逗号分隔值.是一种通用的相对简单地文件格式,目前被较为广泛的使用.其最广泛的应用就是用来转移表数据. “ ...

导出csv文件示例

导出csv文件示例 csv文件默认以英文逗号,做为列分隔符换行符\n作为行分隔符,写入到一个.csv文件即可.含有英文逗号,和换行符会发生数据输出会出现混乱,下面列出一些处理方法.特殊字符处理1.含有 ...

mysql SQLyog导入导出csv文件

1.选择数据库表 --> 右击属性 --> 备份/导出 --> 导出表数据作为 --> 选择cvs --> 选择下面的“更改” --> 字段 --> 变量长度 ...

PHP 读取/导出 CSV文件

工作中经常会有遇到导入/导出的需求,下面是常用的方法.读取CSV文件,可以分页读取,设置读取行数,起始行数即可.导出CSV文件,用两种方法进行实现. /** * 读取CSV文件 * @param st ...

Web 端 js 导出csv文件(使用a标签)

前言 导出文件,使用最多的方式还是服务器端来处理.比如jsp 中使用response 的方式. 但是,有时候可能就想使用web 前端是否也可以把页面上的内容导出来呢? 比如说,导出页面的一个表格. 这 ...

随机推荐

[JSP]JSP 简介

1.1 概述 1.1.1 什么是 JSP? JSP 全称是 Java Server Pages,是一种动态网页开发技术. 它与 PHP.ASP.ASP.NET 等语言类似,运行在服务端的语言. JSP ...

地址(Address)——统一资源表示(URI)——WCF学习笔记(2)

统一资源标识(URI) URI:Uniform Resource Identifier(统一资源标识),唯一地标识一个网络资源的同时也表示资源所处的位置的方式(资源访问所用的网络协议). URI结构: ...

BUG描述规范

BUG描述规范 一. 目的与适用范围 1.1 目的 报告软件测试错误的目的是为了保证修复错误的人员可以明确报告的错误,从而有利于分析错误产生的原因,定位错误,然后修正之.因此,报告软件测试错误的基本要 ...

MyBatis之二:简单增删改查

这一篇在上一篇的基础上简单讲解如何进行增删改查操作. 一.在mybatis的配置文件conf.xml中注册xml与注解映射 ...

linux下移动或者复制文件覆盖相同文件夹时,文件夹里面的每个文件都提示是否覆盖

链接地址:http://blog.chinaunix.net/uid-23683795-id-2391087.html # vi ~/.bashrc   如果你看到如下内容,以下命令都会用别名执行了, ...

css3的apprearance属性(转)

appearance使用方法: .elmClass{ -webkit-appearance: value; -moz-appearance: value; appearance: value; } 接 ...

jQuery form插件使用详解

点击打开: jquery选择器全解 jquery中的style样式操作 jquery中的DOM操作 jquery中的事件操作全解 jquery中的动画操作全解 jquery中ajax的应用 自定义jq ...

【bzoj4568 scoi2016】幸运数字

题目描述 A 国共有 n 座城市,这些城市由 n-1 条道路相连,使得任意两座城市可以互达,且路径唯一.每座城市都有一个幸运数字,以纪念碑的形式矗立在这座城市的正中心,作为城市的象征. 一些旅行者希望 ...

jsp中forward与redirect

一.调用方式 我们知道,在servlet中调用转发.重定向的语句如下: request.getRequestDispatcher("new.jsp").forward(reques ...

php页面导出csv,使用PHP生成并导出CSV文件相关推荐

  1. java根据word模板导出_java根据模板生成,导出word和pdf(aspose.words实现word转换pdf)...

    相关一部分java文件和jar包 pom文件 com.aspose aspose-words 18.2 word模板 其中的内容要在设置在表格里面 js导出方法 functionf_export(){ ...

  2. hutool导出excel大数据_Hutool excel导出并合并单元格

    一.Hutool介绍 Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以"甜甜的&q ...

  3. 详细说明通过kettke对csv文件转换的操作步骤_如何将多页面pdf分割成一页一页的PDF文件...

    经常会有小伙伴问我,如何将多页面的PDF文件拆分成一个个的PDF文件?例如有5个页面的PDF文件,一次性拆分导出生成5个单页面的PDF文件? PDF文件是我们日常工作学习中经常要用到的,有时候PDF文 ...

  4. java csv 单元格格式_java导出csv格式文件的方法

    本文实例为大家分享了java导出csv格式文件的具体代码,供大家参考,具体内容如下 导出csv格式文件的本质是导出以逗号为分隔的文本数据 import java.io.BufferedWriter; ...

  5. mac php csv 乱码,php 生成csv mac下乱码

    这篇文章主要介绍了php 生成csv mac下乱码 ,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 $file_name = date('Ymd', time()) . '.csv'; ...

  6. 一个生成Rockwell RSLogix5000 .csv 文件和.L5X文件的Excel插件

    一个生成Rockwell RSLogix5000 .csv 文件和.L5X文件的Excel插件 不知道各位AB PLC工程师花多少时间和精力在重复性的编程工作上.比如模拟量输入输出的处理,模拟量报警, ...

  7. vue项目实现打印预览、生成(导出)文档功能

    这个功能其实也是自己学习到的,做完也有一段时间了,一直想记录总结一下,但一直没时间,今天总算闲了一点,趁一大早活还没找上门来,赶紧抓住时间鸭! 1.打印预览 打印预览说白就是实现快速跳转新页面预览信息 ...

  8. Vue 人资 实战篇七 员工管理上 封装通用的组件、formatter属性、过滤器的使用、树形结构、建立公共导入的页面路由、excel的导入和导出、

    1.0 封装一个通用的工具栏 目标:封装一个通用的工具栏供大家使用 1.1 通用工具栏的组件结构 在后续的业务开发中,经常会用到一个类似下图的工具栏,作为公共组件,进行一下封装 组件 src/comp ...

  9. mysql导出为lua配置表文件_利用lua生成一个导出数据库的bat脚本文件

    function getExportDbSql(db, index)-- 获取导出一个数据库实例的sql语句 local sql = string.format('mysqldump -u%s -p% ...

最新文章

  1. 脱壳学习之加壳的概念
  2. python的__init__几种方法总结【转载】
  3. 北京计算机工业学校96届,刘驰_北京理工大学计算机学院
  4. linux——sed 流编辑器
  5. strcpy会覆盖原来的吗_幽默你真的会了吗?原来可以这么简单
  6. 十一、练习:爬取图虫网付费图片
  7. 【英语学习】【Level 08】U02 Movie Time L3 Now showing
  8. [Linux日记]解决Ubuntu升级出现/boot空间不足问题
  9. Linux上mysql安装详细教程
  10. 静静期待 Windows 7 的到来
  11. 3. file、inode结构体及chardevs数组等相关知识解析
  12. -Xms -Xmx -Xmn -Xss 核心总结
  13. Linux如何修改主机名hostname
  14. 【解密】筛选数据分析师简历全流程
  15. 关于Git 的管理凭据操作
  16. 零知识证明的硬件加速
  17. 02-02-JS-jQuery-HTTP-Servlet
  18. .Net加密与解密——非对称加密之加密模式
  19. chrom浏览器代理插件使用教程
  20. 游戏热更新(XLua)专题一(知识点)

热门文章

  1. Windows未能启动,状态:0xc000014c的解决方法
  2. python统计英文单词个数_统计英文单词的个数的python代码 及 字符串分割
  3. Win10下的一些常用快捷键
  4. 王者荣耀4.4日服务器维护,一天不玩都受不了?玩家4.4号当天利用王者荣耀BUG强行进入游戏!...
  5. 分布式系统生成唯一主键
  6. 高通FastCV简介
  7. 记录docker修改mysql映射端口
  8. 火遍全网的chatGPT怎么使用
  9. A Hierarchical Latent Variable Encoder-Decoder Model for Generating Dialogues论文笔记
  10. Py之h5py:Python库之h5py库的简介、安装、使用方法详细攻略