提问者:小点点

用php将mysql查询结果输出到格式化的excel表格中


我必须将mysql查询的结果提取到一个“用户友好”的excel(。xls或。xlsx)表。 我不想为PHP使用导入或包。

这是我目前所得到的:

<?php

function query_to_csv($database, $query, $filename, $attachment = false, $headers = true) {

if ($attachment) {
    // send response headers to the browser
    header('Content-Type: text/csv');
    header('Content-Disposition: attachment;filename=' . $filename);
    $fp = fopen('php://output', 'w');
} else {
    $fp = fopen($filename, 'w');
}

$result = mysqli_query($database, $query) or die(mysqli_error($database));
foreach ($result as $fields) {
    fputcsv($fp, $fields);
    
}
    
    fclose($fp);
} 

这就是结果

我如何使数组在不同的单元格中精化?


共1个答案

匿名用户

不幸的是,我不得不使用一个名为PHP Excel(旧)或PhpSpreadsheet(新)的库。

$objReader->setDelimiter(',');

这是用于设置分隔符的PHP Excel函数。