要件 PHPでCSVを読み込む方法はネット上でたくさん見つかりますが、文字コードの変換のために一旦別ファイルに保存したり、読み込んだデータにアクセスしにくかったりで、何度書いてもなんとなくスッキリしてませんでした。もっといい方法があるんじゃないかなーって。 で、今回満足のいくCSVローダーが書けたので、ご紹介します。 要件は以下の通り。 CSVデータ中に " や改行が入っている場合にも正しく対応したい。 変数に読み込まれたデータは文字コードUTF-8にすること。 文字コードの変換の際に一時ファイルを作らないで済むようにしたい。 各レコードの列にアクセスするのに、カラム列番号じゃなくてCSV1行目のヘッダ文字列をキーにしたい。 数万行くらいのデータならさくっと読み込んで欲しい。 PHP5.3でも動かしたい。 CSV読み込みPHP関数 ということで、PHPフィルタ(php://filter)