- 了解 PHP 處理 CSV 檔案的方法
PHP 處理CSV檔案
- 範例用的檔案內容:email.csv
"hello@test.com",5,10,2010,100 "test@hello.com",6,20,2021,200
- 讀取資料:readcsv.php
<?php
//開啟 CSV 檔案
$csv = fopen('email.csv','rb');
//列出檔案內容
while ((! feof($csv)) && ($line = fgetcsv($csv))){
printf("信箱名稱:%s ",$line[0]);
printf("建立時間:%d/%d/%d ",$line[3],$line[1],$line[2]);
printf("年費: %d ",$line[4]);
printf("\n");
}
//關閉檔案
fclose($csv);
?> - 寫入資料: write.php
<?php
//開啟檔案,設定成寫入權限
$csv = fopen("email2.csv",'wb');
//設定寫入的資料
$line = array("testhello@example.com",7,21,2021,300);
//寫入檔案中
fputcsv($csv,$line);
print("寫入完成!");
?> - 輸出至瀏覽器:tobrowser.php
<?php
//通知瀏覽器準備讀取 CSV 檔案
header('Content-Type: text/csv');
header('Content-Disposition: attachment; filename="email.csv"');
//開啟 CSV 檔案
$lines = fopen('email.csv','rb');
//開啟檔案,做為輸出串流
$csv = fopen('php://output','wb');
//輸出內容
while ((! feof($lines)) && ($line = fgetcsv($lines))){
fputcsv($csv,$line);
}
?> - 有關 CSV 檔案,可參考更進階的套件:PHPOffice PHPExcel 套件!