帝国CMS模板大全
www.admin99.cn
www.92cms.cn 帝国CMS模板下载站!,情怀,养站,二次开发!源码需求比较大的一站式会员下载,价更省!!!

PHP实现数据导入、CSV文件下载的例子 - php高级应

PHP实现数据导入、CSV文件下载的例子

下面我来给各位同学简单的分享两个利用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 ); 

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

赞(0)
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《PHP实现数据导入、CSV文件下载的例子 - php高级应》
文章链接:https://www.admin99.cn/7176
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。
QQ站长交流群:953950264

登录

找回密码

注册