PHP将数据导出为多张表格中的CSV

时间:2015-04-29 04:35:05

标签: php phpexcel fputcsv

每天我都会运行一个cron,它找到尚未提取/导出的数据(通过列"导出"包含布尔值),这样可以正常工作。但是,现在我想为每个结果做一个循环,并将它们粘贴到按日期时间分组的自己工作表中的导出CSV中。

我的新CSV应如下所示:

Sheet 1 (12-04-2015)   Sheet 2 (13-04-2015)   Sheet 3 (14-04-2015)

在这些工作表中显示分组数据,其中包含当天设置的日期时间列。

我当前的CSV导出代码:

    $file = date('YmdHis');

    $fp = fopen('/var/www/exports/'.$file.'.csv', 'w');

    $count = 0;

    while ($row = @mysql_fetch_array($query)) 
    {
        $data[] = array($row['email'],$row['first_name'], $row['last_name'], $row['datetime']);

        if( strlen($cleared)>0 ) $cleared .= ",".$row['id'];
        else $cleared = $row['id'];

        $count++;

    }

    foreach ($data as $d) {
        fputcsv($fp, $d);
    }

    fclose($fp);

我可以使用fputcsv执行此操作,我将如何执行此操作,或者我是否必须使用$objPHPExcel = new PHPExcel();(我知道该怎么做)?

1 个答案:

答案 0 :(得分:2)

CSV不支持工作表,因此您需要使用更强大的功能,例如PHPExcel。可以使用$php_excel->createSheet();方法创建新工作表。您将获得一个可以填充的PHPExcel_Worksheet实例。