后台往往需要导出各种数据到 Excel文档中。通常我们是导出 .csv文件格式,PHP导出函数参考代码如下:

/**
* 导出数据到CSV文件
*
* @param array $data 二维数组(模拟数据表记录)
* @param array $titleList 标题数组列表
* @param string $fileName CSV文件名
*/
function csv_export(&$data, $titleList = array(), $fileName = '')
{
ini_set("max_execution_time", "3600");
$csvData = ''; // 标题
$nums = count($titleList);
for ($i = 0; $i < $nums - 1; $i++)
{
$csvData .= '"' . $titleList[$i] . '",';
}
$csvData .= '"' . $titleList[$nums - 1] . "\"\r\n"; foreach ($data as $key => $row)
{
$i = 0;
foreach ($row as $_key => $_val)
{
$_val = str_replace("\"", "\"\"", $_val);
if ($i < ($nums - 1))
{
$csvData .= '"' . $_val . '",';
}
elseif ($i == ($nums - 1))
{
$csvData .= '"' . $_val . "\"\r\n";
}
$i++;
}
unset($data[$key]);
} $csvData = mb_convert_encoding($csvData, "cp936", "UTF-8");
$fileName = empty($fileName) ? date('Y-m-d-H-i-s', time()) : $fileName;
$fileName = $fileName . '.csv';
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 $csvData;
die();
}

示例:

$data = array(
array(
'name' => 'jake',
'score' => 80,
'grade' => 'A'
),
array(
'name' => 'jin',
'score' => 70,
'grade' => 'A'
),
array(
'name' => 'john',
'score' => 80,
'grade' => 'A'
),
array(
'name' => 'ben3',
'score' => 203,
'grade' => 'B3'
)
); $titleList = array('姓名', '总分', '等级');
$fileName = '高三(3)班 7 月份考试结果'; csv_export($data, $titleList, $fileName);

PHP导出数据到CSV文件函数 csv_export()的更多相关文章

  1. PHP导出数据到CSV文件函数/方法

    如果不清楚什么是CSV文件,可看如下文章介绍  CSV格式的是什么文件?CSV是什么的缩写? /** * 导出数据到CSV文件 * @param array $data 数据 * @param arr ...

  2. PHP导出数据到CSV文件

    后台往往需要导出各种数据到 Excel文档中.通常我们是导出 .csv文件格式,PHP导出函数参考代码如下: /** * 导出数据到CSV文件 * * @param array $data 二维数组( ...

  3. mysql导出数据到csv文件

    在日常工作中经常会遇见导出表中的数据到csv文件的操作,这里就简单总结一下导出的操作. 下面对csv文件的描述是摘录: 据RFC4180文档设置的,该文档全称Common Format and MIM ...

  4. mysql 导出数据到csv文件的命令

    1.导出本地数据库数据到本地文件 mysql -A service_db -h your_host -utest -ptest mysql> select * from t_apps where ...

  5. 从数据库中导出数据到.csv文件

    考虑到csv文件比xls文件格式容易控制,所以在这次导出中用的是.csv格式. protected function exportInfo($arr, &$err){ $nameInfo = ...

  6. Oracle SQLPlus导出数据到csv文件

    时不时地我们需要导出一些数据用作备份.查看报表等,如果用Sql Developer导出会非常慢.而用SqlPlus,则速度非常快. 准备SQL执行文件export.sql: set colsep , ...

  7. SQL SERVER利用BCP命令在命令行下导出数据到csv文件中

    bcp "select * from (DBNAME).dbo.qt_trace where User_1 is not null" queryout c:\%date:~6,4% ...

  8. php导出数据为CSV文件DEMO

    代码示例: private function _download_send_headers($filename) { // disable caching $now = gmdate("D, ...

  9. php导出数据到csv

    序言 php导出数据到csv是一种很常见的功能,且csv相比于excel文件有其一定的优势,首先csv对数据的行数没有限制,但是excel对数据的行数有一定的限制,因此,csv文件对于导出大量的数据来 ...

随机推荐

  1. Shiro - 限制并发人数登录与剔除

    import org.apache.shiro.cache.Cache; import org.apache.shiro.cache.CacheManager; import org.apache.s ...

  2. java发送email

    package com.assess.util; import java.io.File; import java.util.ArrayList; import java.util.List; imp ...

  3. IntelliJ IDEA 乱码解决方案 (项目代码、控制台等)

    IntelliJ IDEA 乱码解决方案 (项目代码.控制台等) 最近IDE从eclipse改成IntelliJ IDEA 了,原因是公司大部分人都在用这个IDE,而且一直推荐用,所以尝尝鲜.换的第一 ...

  4. 激活windows7 企业版小记

    问题:状态不可用 1)控制面板->管理工具->服务,启动SPP Notification Service和Software Protection两项服务后 重启计算机,仍然提示状态不可用. ...

  5. Java实现数组排序

    package com.souvc.hibernate.exp; public class MySort { /** * 方法名:main</br> * 详述:Java实现数组排序 < ...

  6. C++ 一个例子彻底搞清楚拷贝构造函数和赋值运算符重载的区别

    class TestChild { public: TestChild() { x=; y=; printf("TestChild: Constructor be called!\n&quo ...

  7. python基础-RE正则表达式

    re 正则表示式 正则表达式(或 RE)是一种小型的.高度专业化的编程语言,(在Python中)它内嵌在Python中,并通过 re 模块实现.正则表达式模式被编译成一系列的字节码,然后由用 C 编写 ...

  8. 关于SVN 目录结构

    Subversion有一个很标准的目录结构,是这样的.比如项目是proj,svn地址为svn://proj/,那么标准的svn布局是 svn://proj/   |   +-trunk   +-bra ...

  9. Linux 命令积累

    1, su root 切换到root用户 su user 切换到普通用户 2, mkdir / touch 创建文件夹 /文件 3, vi 打开编辑文件 按insert进入编辑模式 编辑完成后 按es ...

  10. Block产生的内存泄露,以及解决方法

    前言: 在ARC(自动引用技术)前,Objective-c都是手动来分配释放 释放 计数内存,其过程非常复杂. ARC技术推出后,貌似世界和平了很多,但是其实ARC并不等同于Java或者C#中的垃圾回 ...