当前位置:Gxlcms > PHP教程 > UTF-8与GBK编码下PHP获取字符串长度的函数

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

时间:2021-07-01 10:21:17 帮助过:21人阅读

  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 < $len; $i++) {
  11. $c = ord($str{$i});
  12. if($c > 252) {
  13. $p = 5;
  14. } elseif($c > 248) {
  15. $p = 4;
  16. } elseif($c > 240) {
  17. $p = 3;
  18. } elseif($c > 224) {
  19. $p = 2;
  20. } elseif($c > 192) {
  21. $p = 1;
  22. } else {
  23. $p = 0;
  24. }
  25. $i+=$p;$n++;
  26. }
  27. } else {
  28. for($i = 0; $i < $len; $i++) {
  29. $c = ord($str{$i});
  30. if($c > 127) {
  31. $p = 1;
  32. } else {
  33. $p = 0;
  34. }
  35. $i+=$p;$n++;
  36. }
  37. }

  38. return $n;

  39. }
  40. ?>

人气教程排行