> 1.この方法で正しいのか?(他に方法はないのか?) その方法で良いと思いますが、str_replace がただの文字列置換なのに対して mb_ereg_replace は正規表現なのでそこに気を付ける必要があります。 > 2.UTF-8の場合どうすれば良いのか? 単に、PHPからUTF-8で出力しているにも関わらず、 Content-TypeでShift_JISが指定されているために化けているのだと思われます。 なので、置換自体は正しく行われています。