`
王之子
  • 浏览: 105577 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

用 PHP 自带函数 fputcsv 和 fgetcsv 来导出报表和导入报表

阅读更多

PHP 自带函数 fputcsv 可以实现打印报表(Excel)功能。如果你的对报表格式要求不是很高,那么 fputcsv 是很好的选择。它执行效率高,不需要第三方库,用起来很方便。

 

一、用 fputcsv 导出报表

 

<?php
$list = array
(
"George,John,Thomas,USA",
"James,Adrew,Martin,USA",
);

$file = fopen("contacts.csv","w");

foreach ($list as $line)
{
  fputcsv($file,split(',',$line));
}

fclose($file);
?>

 

以上代码会在本地生成一个 csv 的文件,能够用 Excel 打开,是不是很简单呢。如果有中文,在 Linux 执行后,下载到本地打开会乱码,那么可以用 iconv 函数进行转换。

 

$list = array();
$tmp = "订单号,订单支付金额,幸运号码,用户名,用户类型,期别,号码产生时间,开奖时间,奖项标识,奖项,奖金,备注";
$list[] = iconv('UTF-8', 'GB2312//IGNORE',$tmp);   

 

直接把生成的 CSV 输出到浏览器

 

header ( 'Content-Disposition: attachment; filename=contacts.csv');//如果文件名是中文的, urlencode 之后在IE不会出现中文乱码
header ( 'Content-type: application/octet-stream; charset=gbk' );
header ( 'Content-Length: '.filesize ('contacts.csv') );//文件的大小
readfile ($file_path);
exit ();  

 

 

二、用 fgetcsv 导入报表

用 fgetcsv 导入报表有一点需要注意的地方。就是必须把 EXCEL 文档转换成 CSV 格式。注意:不是简单的改后缀名。

 

<?php

$file = fopen("contacts.csv","r");

while(! feof($file))
  {
  print_r(fgetcsv($file));
  }

fclose($file);

?> 

 

原文链接:http://woqilin.blogspot.com/2016/05/php-fputcsv-fgetcsv.html

分享到:
评论

相关推荐

    php中fgetcsv()函数用法实例

    主要介绍了php中fgetcsv()函数用法,以实例形式演示了采用fgetcsv()函数操作csv格式文件的方法,具有一定的参考借鉴价值,需要的朋友可以参考下

    php使用fgetcsv读取csv文件出现乱码的解决方法

    本文实例讲述了php使用fgetcsv读取csv文件出现乱码的解决方法。分享给大家供大家参考。具体分析如下: 一般来说在php中碰到乱码多半是编码问题,在这里我们实例分析了fgetcsv读取csv文件乱码原因所在与解决方法。 ...

    PHP和MySQL Web开发第4版pdf以及源码

    3.6.2 使用asort()函数和ksort()函数对相关数组排序 3.6.3 反向排序 3.7 多维数组的排序 3.7.1 用户定义排序 3.7.2 反向用户排序 3.8 对数组进行重新排序 3.8.1 使用shuffle()函数 3.8.2 使用array_reverse()...

    PHP fgetcsv 定义和用法(附windows与linux下兼容问题)

    PHP fgetcsv() 函数从文件指针中读入一行并解析 CSV 字段。与PHP fgets() 类似,不同的是 PHP fgetcsv() 解析读入的行并找出 CSV 格式的字段,然后返回一个包含这些字段的数组

    PHP和MySQL WEB开发(第4版)

    3.6.2 使用asort()函数和ksort()函数对相关数组排序 3.6.3 反向排序 3.7 多维数组的排序 3.7.1 用户定义排序 3.7.2 反向用户排序 3.8 对数组进行重新排序 3.8.1 使用shuffle()函数 3.8.2 使用array_reverse()函数 ...

    PHP和MySQL Web开发第4版

    3.6.2 使用asort()函数和ksort()函数对相关数组排序 3.6.3 反向排序 3.7 多维数组的排序 3.7.1 用户定义排序 3.7.2 反向用户排序 3.8 对数组进行重新排序 3.8.1 使用shuffle()函数 3.8.2 使用array_reverse()...

    php将csv文件导入到mysql数据库的方法

    本程序实现数据导入原理是先把csv文件上传到服务器,然后再通过php的fopen与fgetcsv文件把数据保存到数组,然后再用while把数据一条条插入到mysql数据库,代码如下: 复制代码 代码如下: &lt;?php $fname = $_files[...

    Linux fgetcsv取得的数组元素为空字符串的解决方法

    但服务器上,很多使用Linux服务器,源程序使用UTF-8,这样很容易产生字符编码的问题. 如果仅仅将CSV文件转码为UTF-8,这样在Windows服务器上没有问题, 而在RedHat5.5上,用fgetcsv取得的数组中,如果某列的内容是中文,则该...

    parsecsv-for-php:PHP的CSV数据解析器

    您可能根本不需要任何库:在使用ParseCsv之前,请确保PHP自己的str_getcsv() , fgetcsv()或fputcsv()满足您的需求。 该库最初是由于2007年初创建的,原因是它缺乏内置和第三方支持来处理PHP中的CSV数据。 特征 ...

    PHP处理CSV表格文件的常用操作方法总结

    拿PHP来说,fgetcsv读入csv表格,返回一个数组, 然后foreach输出成HTML的,这步操作几行代码就能实现,非常简单. 工作量主要还在于浏览器前端,建议你用jQuery进行DOM和AJAX操作, 要实现phpMyAdmin那样细粒度双击单元格...

    php 5.6版本中编写一个PHP扩展的简单示例

    主要介绍了php 5.6版本中编写一个PHP扩展的简单示例,本文给出扩展实现代码、编译方法、配置方法和使用例子等内容,需要的朋友可以参考下

    php从csv文件读取数据并输出到网页的方法

    本文实例讲述了php从csv文件读取数据并...while($csv_line = fgetcsv($fp)) { print '&lt;tr&gt;'; for ($i = 0, $j = count($csv_line); $i &lt; $j; $i++) { print '&lt;td&gt;'.htmlentities($csv_line[$i]).'&lt;/td&gt;'; } p

    php读取csv文件并输出的方法

    主要介绍了php读取csv文件并输出的方法,涉及php中fgetcsv函数的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下

    php读取csv文件后,uft8 bom导致在页面上显示出现问题的解决方法

    date.csv:“ID” “NAME” ...while($data=fgetcsv($handle,10000,”/t”)) { echo “$data[0]”.”$data[1]”.”$data[2]”; }?&gt;读取后在页面上显示时,成了这样:“ID” NAME EMAIL 1 小明 xm@163.com 2 小东

    php读取csc文件并输出

    本文给大家分享的是php读取csc文件并输出的方法,方法一用到的是fgetcsv函数,方法二用到是fopen函数,有需要的小伙伴可以参考下。

    php写入数据到CSV文件的方法

    本文实例讲述了php写入数据到CSV文件的方法。分享给大家供大家参考。具体实现方法如下: &lt;?php ... while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) { $num = count($data); $row++;

Global site tag (gtag.js) - Google Analytics