首頁 >後端開發 >php教程 >php计算中文字符串的长度

php计算中文字符串的长度

WBOY
WBOY原創
2016-06-23 13:38:041232瀏覽

<?phpfunction mbstrlen($str,$encoding="utf8"){    if (($len = strlen($str)) == 0) {        return 0;    }    $encoding = strtolower($encoding);    if ($encoding == "utf8" or $encoding == "utf-8") {        $step = 3;    } elseif ($encoding == "gbk" or $encoding == "gb2312") {        $step = 2;    } else {        return false;    }    $count = 0;    for ($i=0; $i<$len; $i++) {        $count++;        //如果字节码大于127,则根据编码跳几个字节        if (ord($str{$i}) >= 0x80) {            $i = $i + $step - 1;//之所以减去1,因为for循环本身还要$i++        }    }    return $count;}echo mbstrlen(iconv("utf-8","gbk","你是我的小苹果"),"gbk");echo mbstrlen("你是我的小苹果");

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn