php 导出csv文件

<?php

 $sql = "select * from members_sqzj order by id asc";
            $result = $db->fetch_All($sql);//查询数据

            $str = "name,tel,company,shangquan\n";
            $str = iconv(‘utf-8‘,‘gb2312‘,$str);
            foreach($result as $k=>$v){
                $name = iconv(‘utf-8‘,‘gb2312‘,$v[‘name‘]); //中文转码
                $tel = iconv(‘utf-8‘,‘gb2312‘,$v[‘tel‘]);
                $company = iconv(‘utf-8‘,‘gb2312‘,$v[‘company‘]);
                $shangquan = str_replace(‘,‘,‘|‘,$v[‘shangquan‘]);//不能出现“,”
                $shangquan = iconv(‘utf-8‘,‘gb2312‘,$shangquan);
                $str .= $name.",".$tel.",".$company.",".$shangquan."\n"; //用引文逗号分开
            }
            $filename = date(‘Ymd‘).‘.csv‘; //设置文件名
            export_csv($filename,$str); //导出

function export_csv($filename,$data)
{
    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 $data;
}
?>

  代码简单,header不好记。

时间: 2024-10-28 22:50:31

php 导出csv文件的相关文章

thinkphp导出csv文件

导出csv文件可能就那几行代码,今天有个问题困扰我好久,就是导出之后出现一些html代码,这个不应该,view里面是空的,controller中最后也没有$this->display(),最后细心看到think_page_trace这样的字样,恍然大悟,是页面的跟踪日志,这个默认是会输出来的.最后在方法后面加了一个exit结束就好了,下面是代码: 1.IndexController.class.php <?php namespace Home\Controller; use Think\Con

项目--简单导出CSV文件

//导出 protected void BtnOutPut_Click(object sender, EventArgs e) { //角色 InitialRoles(); DataTable dt = DBClass.GetDataTable(string.Format(@"SELECT * FROM {0} Order By SN desc", View(Where))); StringWriter sw = new StringWriter(); //4S店不能看到总部价格等相关

mysqldump 导出CSV文件

mysqldump -h 127.0.0.1 -u root -p database table -t -T /home/mysql/ --fields-enclosed-by=\" --fields-terminated-by=, -w 增加条件判断语句 老外的一个处理mysql异常的错误,明天整理一下 http://icesquare.com/wordpress/mysql-starting-mysql-error-the-server-quit-without-updating-pid-f

java utf8字符 导出csv 文件的乱码问题。

在输出的格式为UTF-8的格式,但是打开CSV文件一直为乱码,后来参考了这里的代码,搞定了乱码问题,原文请参考:http://hbase.iteye.com/blog/1172200 private static void writeBcp( ) throws IOException { //Create bcp file if not exist File bcpFile = new File("test.csv"); //bcpFile.delete(); byte[] bom =

php 导入/导出 csv 文件

php 导入/导出 csv 文件 1.简介 项目开发中,很多时候要将外部CSV文件导入到数据库中或者将数据导出为CSV文件,那么具体该如何实现呢?本文将使用原生PHP,实现了CSV格式数据的导入和导出功能.并解决相关乱码问题. 将xls转换成csv的文本格式,然后再用php分析这个文件,和PHP分析文本没有什么区别.优点:跨平台,效率比较高.可以读写.缺点:只能直接使用csv的文件,如果经常接受.xls二进制文件的话需要手工转换,不能自动化.一个文件只有一个SHEET. 2.相关函数介绍 2.1

mysql SQLyog导入导出csv文件

1.选择数据库表 --> 右击属性 --> 备份/导出 --> 导出表数据作为 --> 选择cvs --> 选择下面的“更改” --> 字段 --> 变量长度 --> 字段被终止 -->输入逗号,(这是重点,否则导出的csv文件内容都在一列中,而不是分字段分列)下面两个选项框取消. 2.导出csv文件后,使用UE编辑器打开,另存为,选择编码为utf-8格式,保存. 3.打开csv文件,这样中文为正确的显示,如果不转码保存的话,为中文乱码. 4.选择数据

web前端导出csv文件

前言 导出文件,使用最多的方式还是服务器端来处理.比如jsp 中使用response 的方式. 但是,有时候可能就想使用web 前端是否也可以把页面上的内容导出来呢? 比如说,导出页面的一个表格. 这个需求肯定是有答案的,只是对于各浏览器处理会稍微不一样.(主要是IE 和其他浏览器的区别). 在IE中使用ActiveXObject 实现,在firefox 和Chrome 中使用  a 标签(或者js)就可以实现了. 这里主要讲一下其他浏览器中的实现. 使用 a 标签实现方式 直接上例子: [ht

导出csv文件数字会自动变科学计数法的解决方法

其实这个问题跟用什么语言导出csv文件没有关系.Excel显示数字时,如果数字大于12位,它会自动转化为科学计数法:如果数字大于15位,它不仅用于科学技术费表示,还会只保留高15位,其他位都变0.解决这个问题:只要把数字字段后面加上显示上看不见的字符即可,字符串前面或者结尾加上制表符"\t".php 程序可以这样判断,注意一定是"\t",不是'\t'.

PHP 读取和导出 CSV文件

PHP 读取和导出 CSV文件,速度比phpexcel快80%,而phpexcel 占内存,在数据大的情况下,5万条只需几秒不到,几乎感觉不出来 如果遇到数字是科学计算法,可以在前面加一个 ' 单引号 /** * 读取CSV文件 * @param string $csv_file csv文件路径 * @param int $lines 读取行数 * @param int $offset 起始行数 * @return array|bool */ public function read_csv_l

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

前言 导出文件,使用最多的方式还是服务器端来处理.比如jsp 中使用response 的方式. 但是,有时候可能就想使用web 前端是否也可以把页面上的内容导出来呢? 比如说,导出页面的一个表格. 这个需求肯定是有答案的,只是对于各浏览器处理会稍微不一样.(主要是IE 和其他浏览器的区别). 在IE中使用ActiveXObject 实现,在firefox 和Chrome 中使用  a 标签(或者js)就可以实现了. 这里主要讲一下其他浏览器中的实现. 使用 a 标签实现方式 直接上例子: 1 <