ホームページ  >  記事  >  バックエンド開発  >  文字列が utf-8 であるかどうかを完全に判断する PHP 関数_PHP チュートリアル

文字列が utf-8 であるかどうかを完全に判断する PHP 関数_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-21 14:54:48793ブラウズ

完全判定関数:

function is_utf8($gonten)
{
if (preg_match("/^([".chr(228)."-".chr(233)."]{1}[".chr (128)."-".chr(191)."]{1}[".chr(128)."-".chr(191)."]{1}){1}/",$word) == true || preg_match("/([".chr(228)."-".chr(233)."]{1}[".chr(128)."-".chr(191)." ]{1}[".chr(128)."-".chr(191)."]{1}){1}$/",$word) == true || preg_match("/([". chr(228)."-".chr(233)."]{1}[".chr(128)."-".chr(191)."]{1}[".chr(128)." -".chr(191)."]{1}){2,}/",$word) == true)
{
return true;
}
else
{
return false;
}
}

is_utf8($gonten) メソッドを使用して、文字列 $gonten が utf-8 エンコードされているかどうかを確認します。


このような判定関数がネット上に出回っていますが、実はこの関数の判定は以下の通りです

function is_utf8($string) {

return preg_match('%^(?:
[x09x0Ax0Dx20-x7E] # ASCII
| [xC2-xDF][x80-xBF] # 非オーバーロング 2 バイト
| [xE1-xECxEExEF] [x80-xBF]{2} # ストレート 3 バイト
| xED[x80-x9F][x80-xBF] # サロゲートを除く
x80-xBF]{3} # プレーン 4-15
| food」と「food」はUTF-8でエンコードされていると判断されるため、前者の使用を推奨します。



http://www.bkjia.com/PHPjc/364536.html

www.bkjia.com

本当

技術記事完全判定関数: function is_utf8($gonten) { if (preg_match(/^([.chr(228).-.chr(233).]{1}[.chr(128).-.chr(191). ]{1}[.chr(128).-.chr(191).]{1}){1}/,$word) == true || preg_match(...)
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。