問題 Excelで作ったCSVをfgetcsv()したいが、うまくいかない。 答え 細かい話はこちら 【php】fgetcsv()はロケールの設定に依存する。 //ロケールを指定する setlocale(LC_ALL, 'ja_JP.UTF-8'); //文字コードをロケールに合わせて変える $fp = tmpfile(); fwrite($fp, mb_convert_encoding(file_get_contents('/path/to/excel.csv'), 'UTF-8', 'sjis-win')); rewind($fp); //この後は通常通りの処理 while ($line = fgetcsv($fp)) { var_dump($line); } ポイントは次のとおり。 1、ロケールを指定する。OSのロケールを設定してもよいが、phpのsetlocale()でよい。通常、
