Home > php教程 > php手册 > PHP 检测字符串的编码是否是UTF-8编码的函数 check

PHP 检测字符串的编码是否是UTF-8编码的函数 check

WBOY
Release: 2016-06-06 19:49:37
Original
1252 people have browsed it

找了一下还以为真的没有,然后自己用 网上说的那种 mb_detect_encoding(),很多是通过了,但是还是有几个测试根本就无法判断成功。 后来我自己终于在官网给出的里面找到了一个函数 check_utf8()。现在备份保留下,希望对大家有帮助。 function check_utf8($s

找了一下还以为真的没有,然后自己用 网上说的那种 mb_detect_encoding(),很多是通过了,但是还是有几个测试根本就无法判断成功。

后来我自己终于在官网给出的里面找到了一个函数 check_utf8()。现在备份保留下,希望对大家有帮助。




  function check_utf8($str)
  {
      $len = strlen($str);
      for($i = 0; $i  128) {
              if (($c > 247)) return false;
              elseif ($c > 239) $bytes = 4;
              elseif ($c > 223) $bytes = 3;
              elseif ($c > 191) $bytes = 2;
              else return false;
              if (($i + $bytes) > $len) return false;
              while ($bytes > 1) {
                  $i++;
                  $b = ord($str[$i]);
                  if ($b  191) return false;
                  $bytes--;
              }
          }
      }
      return true;
  } // end of check_utf8
Copy after login


PS:结尾的时候穿插一个事情。网上其实流传最广的应该是这个:PHP 检测字符串的编码是否是UTF-8编码的函数 check


因为中国的那些中文网站大部分都是采集站,自动采集然后发布。

真的害怕有一天,错误说的太多了居然可以成为真理,那这可怕。






Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template