結論 PHPで文字化けするCSV処理を文字化けしなくする方法 - Qiitaを参照頂ければそのお悩みはすぐ解決します。 2022/01/20追記:PHP8.1における Sigh. Double sigh. な修正について。 PHP8.1になって突然SJIS-winが削除されました。 https://github.com/php/php-src/commit/e2459857afdf70ed4bc23bc7f614e9f383eb3072 そのため、日本語PHPにおける鉄板エンコーディング設定が使えなくなっています。 この記事で紹介しているfw3/streamsおよび、fw3_for_old/streamsでは「PHP8.1.*かつSJIS-winが指定された場合はCP932に読み替える」対応を行い、実質的な影響が出ないようにしています。 要点 composer require fw3/st