PHP で特殊文字をその文字の基になる文字に置き換えるにはどうすればよいでしょうか? 質問する

PHP で特殊文字をその文字の基になる文字に置き換えるにはどうすればよいでしょうか? 質問する

どのように交換しますか:

  • 「ã」と「a」
  • 「é」と「e」

PHP で? これは可能ですか? どこかで、基本文字の ASCII 値とアクセントの ASCII 値を使用して計算を実行できると読んだのですが、今のところ参考資料が見つかりません。

ベストアンサー1

Normalizer クラスにアクセスできない、または単に使用したくない場合は、次の関数を使用して、一般的なアクセントのほとんど (すべて?) を置き換えることができます。

function Unaccent($string)
{
    return preg_replace('~&([a-z]{1,2})(acute|cedil|circ|grave|lig|orn|ring|slash|th|tilde|uml);~i', '$1', htmlentities($string, ENT_QUOTES, 'UTF-8'));
}

おすすめ記事