tp3.2导出csv

function test(){
        $csv=new \Think\Csv();
        $sql = "SELECT count(ga.parentId) as friendnum,a.id,a.uuid,a.nickName,a.agentUserType,a.roomCard,a.createTime,a.lastTime,a.gold,a.parentId FROM t_account as a LEFT JOIN t_account as ga on a.uuid=ga.parentId WHERE ( 1=1 ) GROUP BY a.uuid ORDER BY createTime desc ";
        $list = M(‘account‘)->query($sql);  //数据
        $csv_title=array(‘好友数量‘,‘ID‘,‘UUID‘,‘昵称‘,‘用户类型‘,‘房卡数量‘,‘创建时间‘,‘更新时间‘,‘金币数量‘,‘绑定ID‘);  //字段
        $csv->put_csv($list,$csv_title);
     }

Csv.class.php

<?php
namespace Think;
class Csv
{
   //导出csv文件
   public function put_csv($list,$title){
       $file_name="CSV".date("Y-m-d",time()).".csv";
       header ( ‘Content-Type: application/vnd.ms-excel‘ );
       header ( ‘Content-Disposition: attachment;filename=‘.$file_name );
       header ( ‘Cache-Control: max-age=0‘ );
       $file = fopen(‘php://output‘,"a");
       $limit=1000;
       $calc=0;
       foreach ($title as $v){
//           $tit[]=iconv(‘UTF-8‘, ‘GB2312//IGNORE‘,$v);
           $tit[]=$v;
       }
       fputcsv($file,$tit);
       foreach ($list as $v){
           $calc++;
           if($limit==$calc){
               ob_flush();
               flush();
               $calc=0;
           }
           foreach ($v as $t){
//               $tarr[]=iconv(‘UTF-8‘, ‘GB2312//IGNORE‘,$t);
               $tarr[]=$t;
           }
           fputcsv($file,$tarr);
           unset($tarr);
       }
       unset($list);
       fclose($file);
       exit();
   }    

}

?>

原文地址:https://www.cnblogs.com/csd97/p/8297778.html

时间: 2024-10-08 02:15:56

tp3.2导出csv的相关文章

mysql导出csv

原网页 http://www.web-jia.com/view.php?a=12 今天有的需求要一些数据,现在这套系统用了mysql数据库了,没有sqlserver导出数据那么简单了 要数据想到最简单的当然是导出csv了 查了一下有outfile 可以用稍微设置一下就可以了还是挺不错的 select * from player into outfile 'd:/out.csv' fields terminated by ',' optionally enclosed by '' lines te

PHP 和 JS 导入导出csv表格(上)

CSV简介 在开发后台管理系统的时候,几乎无可避免的会遇到需要导入导出Excel表格的需求.csv也是表格的一种,其中文名为"逗号分隔符文件".在Excel中打开如下图左边所示,在记事本打开如下图右边所示: 再看包含特殊字符的表格 与xls或xlsx 表格相类似,CSV文件也是用来表示二维表格.而不同的是: 1.CSV是一种纯文本文件,任何编辑器都能打开并读取它:xls(x)是专用的二进制文件,要用表格软件才能正常打开,否则乱码: 2.CSV的体积很小,比如上面的表格内容,csv只有几

thinkphp导出csv文件

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

php使用ajax导出CSV或者EXCEl(thinkphp)方法

首先我强烈推荐看到这篇文章的你将导出文件设置为csv格式的文件 实际测试导出csv文件的速度是excel文件的10几倍左右 首先我先介绍csv文件的导出的方法: 如果你单纯是在数据导出界面上通过用户点击生成csv或者excel按钮通过服务器往浏览器输出excel或者csv 如果数据量小的化可以使用这样的方法(这种方法无法使用ajax)网上百度一下一堆介绍 这里有较为详细的方法介绍 和源码 我这里介绍的是 当数据量比较大时比如生成excel或者csv文件可能需要 几分钟这时候我们需要在用户点击生成

项目--简单导出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 =

CSVHelper 导出CSV 格式

public class CSVHelper { System.Windows.Forms.SaveFileDialog saveFileDialog1;//保存 private string header = string.Empty;//标题 /// <summary> /// 初始化打印设置 /// </summary> /// <param name="printID"></param> protected void InitEx

php 导入/导出 csv 文件

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