好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

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 );  } 

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

查看更多关于PHP实现数据导入、CSV文件下载的例子 - php高级应的详细内容...

  阅读:54次