• ベストアンサー

str_replaceで文字化け

お世話になります。 PHPでstr_replaceを使用しましたら、 「ー」や「・」などの文字が、文字化けを してしまいました。 いろいろ調べたのですが、よく分からずに 困っています。 PHPで文字の置換を行いながら、文字化けを しない方法はどのようにしたらよいのでしょうか。 $abc = str_replace(" ", "", $abc); のあとに$abcを出力しましたら、文字化けをして しまいました。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

str_replaceがマルチバイト文字列関数ではないからでしょうか。 $abc = mb_ereg_replace("[ ]","",$abc) とか、マルチバイト文字列関数を使用してみては。

hudsio
質問者

お礼

お返事をありがとうございます。 おっしゃるとうり、mb_ereg_replaceで行いましたら、無事に文字化けが回復いたしました。 ありがとうございました。

その他の回答 (1)

回答No.1

str_replaceの直前ですでに文字化けしているということはありませんか?

hudsio
質問者

お礼

お返事をありがとうございます。 それはないようなのです。 str_replaceを行わなければ、問題なく出力が されるようですので。 でも普通に「ー」を出力する時は問題ないのですが、「ファースト」などの、「ァ」のような文字とつづけ た出力をしますと、化けるようです。

関連するQ&A

専門家に質問してみよう