ウェブアプリを作っていて、Excelからの出力ファイルを、設定ファイル等に使用したい時がある。そんな時にExcelからの出力形式でCSVやタブ区切りテキスト等を使うことも多いかと思うが、日本語の場合シフトJISで出力される。この場合、もちろんPHP側で読み込む際に文字コード変換すればいいのだが、日本語じゃなくて韓国語とか中国語とか含まれていた場合でも上手く対応できないか、と考えた。 Excelにはunicodeで出力するオプションが用意されていて、これを選ぶとタブ区切りで文字コードUTF-16LEのBOMつき、拡張子txtでファイルを出力してくれる(ちなみに拡張子をcsvに変更すると、当該ファイルのダブルクリックでExcelが自動起動してくれるので便利)。マルチバイトで使用する場合は一番便利がよさそう。 でもまぁ、UTF-8への変換は必要になる。そこで以下のようなコードを書いてみた。読み込