如何从mySQL数据库创建格式化的Excel列表?

时间:2018-12-07 12:11:34

标签: php mysql excel format export

我使用mySQL数据库,并且必须创建一些Excel格式(xlsx)的列表。 Excel工作表必须格式化。对于csv导出,我使用phpExcel(我知道它已经过时了,但仍在工作)。

我还需要从mySQL数据库中创建格式化的Excel工作表。我使用php创建前端。

谢谢, 马库斯

1 个答案:

答案 0 :(得分:0)

这只是我使用的功能的副本。它只是在设置了特定的$ _GET时启动该函数。该函数创建一个xlsx文件。如果要将文件导出为.csv,则只需更改文件扩展名并将text / xlsm编辑为text / csv

   $gg = $db->prepare("SELECT * FROM beta_mails ORDER BY created DESC");


    $gg->execute();
            $ggg = $gg->get_result();
            $gg->store_result();

            while ($row = $ggg->fetch_assoc()) {
            $data[] = $row;
        }

        function getprelaunchCSV(){
            global $data;

        header('Content-Type: text/xlsx; charset=utf-8');
        header('Content-Disposition: attachment; filename=data.xlsx');
        // create a file pointer connected to the output stream
        $output = fopen('php://output', 'w');
        // output the column headings
        fputcsv($output, array('ID', 'EMAIL', 'OPRETTET'));
        foreach ($data as $rowCSV){
            fputcsv($output, [$rowCSV["id"], decrypt($rowCSV["email"]), $rowCSV["created"]]);
        }
        fclose($output);
        die();
    }

    if (isset($_GET["getlist"]) && $_GET["getlist"] == "1") {
        echo getprelaunchcsv();
        header("Location:admin?success=1");
    }