此篇主要著重於探討CSV檔在PHP上的應用,文中提及資料庫連線及方法於此不多做討論。
CSV檔案內容主要是資料與資料間採「 , 」(逗號)格開的方式儲存,以下範例:
// file.csv 內容開始 =======================================
商品編號,商品名稱,單價
1,鳳眼糕,50
2,石花糕,60
3,元寶酥,80
// file.csv 內容結束 ========================================
// 資料表 product 內容開始=======================================
productid, int(11) //商品編號
productname, varchar(200) //商品名稱
productprice, int(11) //單價
// 資料庫內容結束 =======================================
PHP提供函式可對CSV檔案作存取(可參考:http://www.php.net)
資料庫連線方式及說明(可參考:http://www.php.net)
<?php
$row = 1;
$handle = fopen("file.csv", "r");
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$num = count($data);
$row++;
if($row!=1){ // 第一筆不讀入,若您的CSV檔案內容包含欄位名稱請加上此判斷句
for ($c=0; $c < $num; $c++) {
$tmp[$c] =$data[$c]; //將取得的資料暫時存於$tmp陣列中
}
echo $tmp[0].' '; //印商品編號
echo $tmp[1].' '; //印商品名稱
echo $tmp[2].' <br />'; //印單價並換行:<br />
//逐筆寫入資料表 product 中對應的欄位
$query = "INSERT INTO product (productid, productname, productprice) VALUES ('$tmp[0]','tmp[1]','tmp[2]');";
$result = mysql_query($query);
}
}
fclose($handle);
?>
http://blog.yam.com/nian0827/article/18329527