2016-10-02 4 views
0

Excelファイルの自動VBスクリプトを使用してCSVファイルを作成します。ファイルはlatin_1でエンコードされています。このファイルをMySQLデータベースに正しくインポートするには、ファイルのエンコーディングをUTF8に変換する必要があります。MySQLインポート前に.csvファイルのエンコーディングを変更する

ファイルを手動でUTF8に保存すると機能しますが、PHPで自動化したいと考えています。

方向はです。XLS - > CSV - > MYSqlです。すべてが窓で走ります。

+0

xlsまたはcsvは元々ありますか? –

答えて

1

これは、任意のエンコーディングから任意のテキストファイルのエンコーディングをUTF-8に変換します。 XLSファイルでは動作しません。あなたは、元のファイルを上書きしたくない場合は、

$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()ための異なる第1引数を指定:あなたが最初のCSVに変換する必要があると思います。

+1

手動でCSVに変換する必要なくXLSファイルを解析できる[PHPExcel](https://github.com/PHPOffice/PHPExcel)というオープンソースライブラリがあります。 – Terry

関連する問題