PHP5.6以上でShift_JISのPHPファイルが文字化けするときの解決方法
PHP5.6以上の場合、拡張子が.phpの場合で、文字コードがShift_JIS、PHPが絡んでいようがいまいが文字化けしてしまうようです。(要するにそのファイルにHTMLだけが記述されていたとしても)
つまりmetaタグのContent-Typeで「charset=shift_jis」などを指定していたとしても文字化けしてしまいます。
おそらくデフォルトcharsetがUTF-8に変わったせいだろうと思われます。
解決法としては、単純にheader関数で明示的に文字コードを指定すれば解決できました。
以下1行をソース上の一番上の行(DOCタイプ宣言の更に上)に記述すればOK。
※EUC-JPの場合は適宜変更して下さい。
<?php header("Content-Type: text/html;charset=Shift_JIS");?>
参考サイト: