我使用Excel文件的自動VB腳本創建CSV文件。該文件編碼爲latin_1
。要將這個文件正確地導入到我的MySQL數據庫中,我需要將文件的編碼轉換爲UTF8
。在導入MySQL之前更改.csv文件的編碼
它工作,如果我手動將文件保存到UTF8,但我想用PHP自動。
方向是XLS - > CSV - > MYSql。一切都在Windows上運行。
我使用Excel文件的自動VB腳本創建CSV文件。該文件編碼爲latin_1
。要將這個文件正確地導入到我的MySQL數據庫中,我需要將文件的編碼轉換爲UTF8
。在導入MySQL之前更改.csv文件的編碼
它工作,如果我手動將文件保存到UTF8,但我想用PHP自動。
方向是XLS - > CSV - > MYSql。一切都在Windows上運行。
這會將任何文本文件的編碼從任何編碼轉換爲UTF-8。請注意,它不適用於XLS文件;你必須先將其轉換爲CSV:
$pathToFile = '...';
$original = file_get_contents($pathToFile);
$originalEncoding = mb_detect_encoding($original);
$converted = mb_convert_encoding($original, 'UTF-8', $originalEncoding);
file_put_contents($pathToFile, $converted);
如果您不想覆蓋原始文件,指定一個不同的第一個參數爲file_put_contents()
。
有一個知道[PHPExcel](https://github.com/PHPOffice/PHPExcel)的開源庫,可以解析XLS文件,而無需手動轉換爲CSV。 – Terry
你最初是否有xls或csv? –