加入收藏 | 设为首页 | 会员中心 | 我要投稿 开发网_郴州站长网 (http://www.0735zz.com/)- 云通信、区块链、物联设备、云计算、站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php 中英文字符串截取函数

发布时间:2022-06-18 15:37:30 所属栏目:PHP教程 来源:互联网
导读:/** * php获取字符串中英文混合长度 * @param $str string 字符串 * @param $$charset string 编码 * @return 返回长度,1中文=1位,2英文=1位 */ function strlength($str,$charset=utf-8){ if($charset==utf-8) $str = iconv(utf-8,gb2312,$str); $num = s
   /**
    * php获取字符串中英文混合长度  
    * @param $str string 字符串
    * @param $$charset string 编码
    * @return 返回长度,1中文=1位,2英文=1位
    */
   function strlength($str,$charset='utf-8'){
       if($charset=='utf-8') $str = iconv('utf-8','gb2312',$str);
       $num = strlen($str);
      $cnnum = 0;
      for($i=0;$i<$num;$i++){
          if(ord(substr($str,$i+1,1))>127){
              $cnnum++;
              $i++;
         }
      }
      $ennum = $num-($cnnum*2);
      $number = ($ennum/2)+$cnnum;
      return ceil($number);
  }  
  //测试输出长度都为15 //开源代码phpfensi.com
  $str1 = '测试测试测试测试测试测试测试测';
  $str2 = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa';
  $str3 = 'aa测试aa测试aa测试aa测试aaaaaa';
  echo strlength($str1,'gb2312');
  echo strlength($str2,'gb2312');
  echo strlength($str3,'gb2312'); 

(编辑:开发网_郴州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读