加入收藏 | 设为首页 | 会员中心 | 我要投稿 汽车网 (https://www.0577qiche.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP实现数据导入、CSV文件下载的一个示例

发布时间:2023-06-09 16:44:51 所属栏目:PHP教程 来源:
导读:下面我来给各位同学简单的分享两个利用php操作csv格式文件的例子,一个是对csv输出下载,另一个是利用php的fgetcsv函数、fputcsv函数进行读写操作.

导入、导出CSV文件,代码如下:

class csv
{
private $reso
下面我来给各位同学简单的分享两个利用php操作csv格式文件的例子,一个是对csv输出下载,另一个是利用php的fgetcsv函数、fputcsv函数进行读写操作.

导入、导出CSV文件,代码如下:

class csv 

 private $resource; 
 
 /** 
  * @param string $fileName 文件路径 
  * @param string $mode     文件访问类型:w:写入、r:只读 
  */ 
 public function __construct($fileName, $mode) 
 { 
  $this->resource = fopen($fileName, $mode); 
 } 
 
 public function __destruct() 
 { 
  fclose($this->resource); 
 } 
 
 /** 
  * 导入CSV 
   * @param array $data 
  * @return int 
  */ 
 public function export($data) 
 { 
  fputcsv($this->resource, $data); 
 } 
 
 /** 
  * 导出CSV 
  * @return array 
  */ 
 public function import() 
 { 
  $tmp = array(); 
  while($data = fgetcsv($this->resource)) 
  { 
   $tmp[] = $data; 
  } 
 
  return $tmp; 
 } 

这里我们主要用到了php fgetcsv函数、fputcsv函数,CSV文件下载代码如下:

function exportUserTask() 

 //获取数据库数据 
 /* 
  * $result = array( 
  *   array(value1,value2,value3,value4,value5,value6), 
  *   array(value1,value2,value3,value4,value5,value6), 
  * ); 
  */ 
 
 $handle = fopen('php://output', "w"); 
 header('Content-Type: application/csv'); 
 header('Content-Disposition: attachment; filename="test.csv"'); 
 
 //表头
 fputcsv($handle, array('用户UID', '用户名', '进行中', '已完成', '已失败', '总计')); 
 
 foreach($result as $value) 
 { 
  fputcsv($handle, $value); 
 } 
 
 fclose($handle); 

需要提醒的是在导入、导出数据过程注意中文乱码问题,这主要是数据编码格式问题,使用过程根据实际情况对数据进行转码.

 

(编辑:汽车网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章