今天在上傳CSV文件的時候,Windows下調試一切正常。媽的一到Linux下面,就出現問題,第一行數據總是讀取不出來,
利用print_r()打印出讀取文件的內容,發現有一個很奇怪的字符在作怪。為什么第一個字符會出現重疊的問題呢。經排除發現是文件的編碼格式不對。
在Windows下面,轉碼后的CSV的編碼格式為以帶BOM的UTF-8格式編碼,在Linux下面不支持BOM,因此在notepad++里面講文件的格式轉換成不在BOM的UTF-8格式編碼,再次上傳文件,在Linux下面運行一切正常。
遇到這個坑之后,特地百度了一下關於Linux下面文件編碼的問題,發現遇到問題的人也很多的,下面為知乎上的一些見解,說的很有趣,人比較懶,直接扔鏈接。
https://www.zhihu.com/question/20167122