用 PHP 建立 Excel 檔案 (.xls)
2008/03/14
有時需要將資料庫內的資料或 PHP 的動態內容儲存成 excel 檔,本文會介紹一個概簡單又實用的方法。
建立 Excel 檔案
如果需要用 PHP 建立 Excel 檔案,只需用一般的檔案處理函式,而檔案名稱儲存成 .xls 副檔名即可,例如:<?php
$fp = fopen("excel/filename.xls", "w");
fputs($fp, "Mon\tTue\tWed\tThu\tFri\tSat\tSun");fclose($fp);
?>
以上程式碼會在 excel 目錄建立一個名為 filename.xls 的檔案,內容是在第一行寫入一星期七天的英文簡寫,每一欄一天。
實際上與建立一般文字檔的方法一樣,只是如果要跳到下一個欄位,就用 \t 字元,而要跳到下一行,則用 \n 字元。
顯示下載窗口
如果電腦內有安裝 Excel 的話,在預設情況下當在 IE 按了 .xls 副檔名的文件時,IE 不會彈出下載窗口,而是直接顯示內容,以下兩個例子可避免這情況:直接將內容輸出給瀏覽器下載
<?php
header("Content-type:application/vnd.ms-excel");
header("Content-Disposition:filename=php_excel.xls");
echo "Mon\tTue\tWed\tThu\tFri\tSat\tSun"
?>
讀取已存在的檔案給瀏覽器下載
<?php
header("Content-type:application/vnd.ms-excel");
header("Content-Disposition:filename=php_excel.xls");
readfile("excel/filename.xls");
?>
上面使用了 header() 傳送檔頭資訊給瀏覽器,可使瀏覽器出現下載窗口,而預設儲存的檔案名稱是 php_excel.xls。
====================================================
歡迎轉載,但轉載時請保留此宣告,不得作為商業用途
作者: Sam Tang <admin{at}phpini{dot}com>
來源網站: http://www.phpdc.com/