ホームページ  >  記事  >  バックエンド開発  >  PHP で特殊文字をその基本文字に置き換えるにはどうすればよいですか?

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

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-30 17:54:03930ブラウズ

How to Replace Special Characters with Their Base Equivalents in PHP?

特殊文字を PHP の基本文字に置き換える

質問: 特殊文字をその基本文字に置き換えることは可能ですか? "ã" を "a" に、"é" を "e" に変換するなど、PHP での基本文字に相当するものは何ですか?

答え: はい、アクセント付き文字をその基本文字に置き換えることは可能です。 PHP を使用した場合と同等です。

Method:

Normalizer クラスにアクセスできる場合は、Normalizer::normalize() メソッドを Normalizer::FORM_D で使用できます。定数:

<code class="php">$string = "ãé";
$baseString = Normalizer::normalize($string, Normalizer::FORM_D);</code>

Normalizer クラスにアクセスできない場合は、次の関数を使用できます:

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

この関数は、HTML エンティティを対応する文字に変換し、正規表現を使用して一般的なアクセント記号を削除します。

例:

<code class="php">$string = "ãé";
$baseString = Unaccent($string);</code>

結果の $baseString 変数には "ae" が含まれます。

以上がPHP で特殊文字をその基本文字に置き換えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。