今回は、前回書いたこのコードを用いた文字コードの変換について、自分のコードを用いてより詳しく紹介する。
mb_convert_encoding
$infname 入力ファイル名 $incode 入力ファイル名の文字コード $outfname 出力ファイル名 $outcode 出力ファイルの文字コード
実際に書いたコードは
$infname = "FREE_WiFi.csv"; $outfname = "FREE.csv"; $incod = "sjis"; $outcod = "utf-8"; $message = convertCode($infname, $incod, $outfname, $outcode, $nl); echo $message; function convertCode($infname, $incod, $outfname, $outcode, $nl) { $incsv = file_get_contents($infname); if ($incsv==false) { return "変換失敗:{$infname} が見あたりません."; } $outcsv = mb_convert_encoding($incsv, $outcod, $incod); $outfp = fopen($outfname, "wb"); if ($outfp == false) { return "変換失敗:{$outfname} に書き込むことができません."; } fwrite($outfp, $outcsv); fclose($outfp); return "変換成功:{$infname} => {$outfname}"; }
関数 file_get_contents を使って一気にテキストファイルを読み込む。
続いて、関数 mb_convert_encoding で文字コードを変換する。
最後に、関数 fopen 、 fwrite 、 fclose を使って変換したファイルを保管する。
これで、文字形式を変換することが出来る。