調べてみたところ、Content-Type で指定される文字コードは、php.ini の default_charset というパラメーターで指定することになっているようです。PHP 5.6 からデフォルト値が空から "UTF-8" に変更されています。
今までは空だったため、特に Content-Type で charset が指定されることもなく、このような問題が発生しなかったのだと思います。PHP 5.5 から 5.6 以上に上げると Shift_JIS や EUC-JP のサイトが文字化けする #PHP - Qiita
デフォルト
PHP5.6以前 default_charset => no value => no value
PHP5.6以降 default_charset => UTF-8 => UTF-8