PHPでメールアドレスの文字列の@(アットマーク)の前に\(バックスラッシュ)を付けたい

こんにちは
PHPでメールアドレスの文字列の@(アットマーク)の前に\(バックスラッシュ)を付けたいのですが..

例えば
sample@hoge.com

という文字列の@の前に\を着けて
sample\@hoge.com
という文字列を作りたいとします

str_replace関数で置換すればよいかな?と思い

php

1str_replace("@","\@","sample@hoge.com");

とすると結果は..
sample\\@hoge.com
(バックスラッシュが2個)
が返ってきます

どのようにすれば目的の

sample\@hoge.com
が得られるでしょうか?

また、なぜこのようになるのでしょうか?おそらくバックスラッシュや@が特殊な文字だからということだと思いますが、詳しくはわかりませんでした。

よろしくお願いいたします。

コメントを投稿

0 コメント