php计算字节数(含中文)
php计算字节数(含中文)
杨太化 发表于3年前
php计算字节数(含中文)
  • 发表于 3年前
  • 阅读 14
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

代码

Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->/**作用:统计字符长度包括中文、英文、数字
     * 参数:需要进行统计的字符串、编码格式目前系统统一使用UTF-8
     * 时间:2009-07-15
     * 修改记录:
             $str = "kds";
            echo sstrlen($str,'utf-8');
     * */
     function sstrlen($str,$charset) {        
        $n = 0; $p = 0; $c = '';
        $len = strlen($str);
        if($charset == 'utf-8') {
            for($i = 0; $i < $len; $i++) {
                $c = ord($str{$i});
                if($c > 252) {
                    $p = 5;
                } elseif($c > 248) {
                    $p = 4;
                } elseif($c > 240) {
                    $p = 3;
                } elseif($c > 224) {
                    $p = 2;
                } elseif($c > 192) {
                    $p = 1;
                } else {
                    $p = 0;
                }
                $i+=$p;$n++;
            }
        } else {
            for($i = 0; $i < $len; $i++) {
                $c = ord($str{$i});
                if($c > 127) {
                    $p = 1;
                } else {
                    $p = 0;
            }
                $i+=$p;$n++;
            }
        }        
        return $n;
    }


共有 人打赏支持
粉丝 13
博文 222
码字总数 26188
×
杨太化
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: