簡體   English   中英

將HTML和PHP創建的表導出到Excel文件中

[英]Export a table created by HTML aND PHP into an excel file

如何將PHP創建的表導出到Excel文件中? 有什么辦法嗎?

我實際上想這樣做:

說我正在查詢數據庫是一個php文件並在html和PHP表中顯示結果...

該表將是動態的,具體取決於用戶要搜索的內容。 用戶應該能夠通過單擊EXPORT按鈕將表另存為excel文件...

在php中有什么選擇嗎?

PHPExcel可能是最好的庫。 如果您下載了它,那么幾乎可以肯定有大量的示例可以顯示您想要做什么。

一個簡單的例子如下:

$objPHPExcel = new PHPExcel();
$objWorksheet = $objPHPExcel->getActiveSheet();
$objWorksheet->fromArray(
    array(
        array('',       'Rainfall (mm)',    'Temperature (°F)', 'Humidity (%)'),
        array('Jan',        78,                 52,                 61),
        array('Feb',        64,                 54,                 62),
        array('Mar',        62,                 57,                 63),
        array('Apr',        21,                 62,                 59),
        array('May',        11,                 75,                 60),
        array('Jun',        1,                  75,                 57),
        array('Jul',        1,                  79,                 56),
        array('Aug',        1,                  79,                 59),
        array('Sep',        10,                 75,                 60),
        array('Oct',        40,                 68,                 63),
        array('Nov',        69,                 62,                 64),
        array('Dec',        89,                 57,                 66),
    )
);

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('sheet.xlsx');

另外,您可以很容易地將其導出為CSV格式,然后用戶可以輕松地在excel中打開CSV文件(盡管從技術上講,這不是excel文檔-存在限制)。

將表存儲在變量中

並寫入文件

例如:

$content = "";//in content you must have table data
$file = fopen("file location", "w");
fwrite($file ,$content);

這應該幫助容易

如果有最終用戶將查看文件,請使用已經使用PHPExcel給出的答案

如果您要進行數據訪問,請使用CSV。

https://php.net/manual/en/function.fputcsv.php

$list = array (
    array('aaa', 'bbb', 'ccc', 'dddd'),
    array('123', '456', '789'),
    array('"aaa"', '"bbb"')
);

$fp = fopen('file.csv', 'w');

foreach ($list as $fields) {
    fputcsv($fp, $fields);
}

fclose($fp);

如果不需要公式或特殊功能,則輸出CSV文件(Excel可以打開)也很容易。 如果您有一個數組,如所示的一個謎,則可以使用

$string = "";
foreach ($array as $row)
    $string .= implode(',', $row) . "\n";
file_put_contents("filename.csv", $string);

看看這堂課。 它能夠從HTML表創建多頁excel文件。

https://github.com/GSTVAC/HtmlExcel

$xls = new HtmlExcel();
$xls->addSheet("Names", $names);
$xls->headers();
echo $xls->buildFile();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM