PHP 想將 CSV 轉成陣列,只要使用 str_getcsv() 即可,不過 CSV 的格式通常不會讓人這麼好過,CSV 常見幾個問題先列在下面:
- Big5 編碼 (Excel 存檔成 CSV 和要打開預設都是需要 Big5)
- BOM (若有存 UTF-8 的話,大多數會有 BOM)
- 分隔符號 (常見 "\t" 和 ","),有時候還會確保整個字串,會用 """ 包起來 (三個 double quote)
- 第一行是標題,想直接拿來當 Key 操作
在此篇上述就不解決(其它文章有寫解法,在此不詳述),只解決 3 和 4 的問題。