欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

UTF-8与GBK编码下PHP获取字符串长度的函数

程序员文章站 2024-01-22 16:21:10
...
  1. /*

  2. * 统计字符串长度
  3. *@param $str 被统计字符串
  4. */
  5. function sstrlen($str) {
  6. global $charset;
  7. $n = 0; $p = 0; $c = ”;
  8. $len = strlen($str);
  9. if($charset == ‘utf-8′) {
  10. for($i = 0; $i $c = ord($str{$i});
  11. if($c > 252) {
  12. $p = 5;
  13. } elseif($c > 248) {
  14. $p = 4;
  15. } elseif($c > 240) {
  16. $p = 3;
  17. } elseif($c > 224) {
  18. $p = 2;
  19. } elseif($c > 192) {
  20. $p = 1;
  21. } else {
  22. $p = 0;
  23. }
  24. $i+=$p;$n++;
  25. }
  26. } else {
  27. for($i = 0; $i $c = ord($str{$i});
  28. if($c > 127) {
  29. $p = 1;
  30. } else {
  31. $p = 0;
  32. }
  33. $i+=$p;$n++;
  34. }
  35. }
  36. return $n;

  37. }
  38. ?>
复制代码