ホームページ > バックエンド開発 > PHPチュートリアル > 文字列エンコーディングが utf8 であるかどうかを判断する PHP 関数の例

文字列エンコーディングが utf8 であるかどうかを判断する PHP 関数の例

WBOY
リリース: 2016-07-25 08:57:22
オリジナル
952 人が閲覧しました
  1. /**
  2. * 文字列エンコーディングを決定する
  3. * bbs.it-home.org によって編集する
  4. */
  5. function is_utf8($word)
  6. {
  7. if(preg_match("/^([".chr(228)."-".chr( 233)."]開発済み[".chr(128)."-".chr(191)."]開発済み[".chr(128)."-".chr(191)."]開発済み)開発/" ,$word) == true || preg_match("/([".chr(228)."-".chr(233)."]開発済み[".chr(128)."-".chr(191) ."]開発[".chr(128)."-".chr(191)."]開発)開発$/",$word) == true || preg_match("/([".chr(228) ."-".chr(233)."]開発されました[".chr(128)."-".chr(191)."]開発されました[".chr(128)."-".chr(191)。 "]開発){2,}/",$word) == true) {
  8. return true;
  9. }else {
  10. return false }
  11. }
  12. $t = 'wangbin';
  13. //$t = iconv ('GB2312','UTF-8',$t)
  14. var_dump(is_utf8($t));
  15. ?>
コードをコピー
さらに、PHP の関数 mb_detect_encoding もそのような関数を実装できます。

文字列が PHP で utf8 エンコードされたコードかどうかを検出します。関数: mb_detect_encoding。これには、PHP 環境に mb_string ライブラリがインストールされている必要があります。 mb_detect_encoding 関数の関連情報については、以下を参照してください。

文字列エンコーディングを取得するphp関数mb_detect_encoding php mb_detect_encoding は不正な文字列エンコーディングの問題を検出します 実装された関数は次のとおりです:

  1. /**
  2. * utf8 エンコードかどうかを確認してください
  3. * bbs.it-home.org で編集してください
  4. */
  5. function is_utf8($string) {
  6. return preg_match('%^(?:
  7. [x09x0Ax0Dx20-x7E] # ASCII
  8. | [xC2-xDF][x80-xBF] # オーバーロングでない 2 バイト
  9. | 2} # ストレート 3 バイト
  10. | xED[x80-x9F][x80-xBF] # サロゲートを除く
  11. # プレーン 4-15
  12. | {2} # プレーン 16
  13. )*$%xs', $string)
  14. }
  15. ?>
  16. コードをコピー
手順: 精度は、良くも悪くも基本的に mb_detect_encoding と同じです。しかし、日常の開発には基本的にこれで十分です。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート