首页 > 语言 > PHP > 正文

php 中英文字符串截取函数

2024-09-04 11:48:39
字体:
来源:转载
供稿:网友
  1.  /** 
  2.   * php获取字符串中英文混合长度  
  3.   * @param $str string 字符串 
  4.   * @param $$charset string 编码 
  5.   * @return 返回长度,1中文=1位,2英文=1位 
  6.   */ 
  7.  function strlength($str,$charset='utf-8'){ 
  8.      if($charset=='utf-8'$str = iconv('utf-8','gb2312',$str); 
  9.      $num = strlen($str); 
  10.     $cnnum = 0; 
  11.     for($i=0;$i<$num;$i++){ 
  12.         if(ord(substr($str,$i+1,1))>127){ 
  13.             $cnnum++; 
  14.             $i++; 
  15.        } 
  16.     } 
  17.     $ennum = $num-($cnnum*2); 
  18.     $number = ($ennum/2)+$cnnum
  19.     return ceil($number); 
  20. }  
  21. //测试输出长度都为15 //开源代码Vevb.com
  22. $str1 = '测试测试测试测试测试测试测试测'
  23. $str2 = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
  24. $str3 = 'aa测试aa测试aa测试aa测试aaaaaa'
  25. echo strlength($str1,'gb2312'); 
  26. echo strlength($str2,'gb2312'); 
  27. echo strlength($str3,'gb2312'); 

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表