字符串长度(PHP学习)
1.計(jì)算字符串長度有哪些方法?
答:strlen() ? 和 ?mb_strlen()
2.兩者有什么區(qū)別
答:
如下代碼
<?php $str = 'hello中國'; ?>strlen($str)計(jì)算的是字節(jié)的長度,在utf8下一個(gè)漢字代表3個(gè)字符,算出來是11 ?在GB2312和GBK下是2個(gè)字符,算出來是9
mb_strlen()計(jì)算的是字符長度 mb_strlen($str,[GBK|GB2312|utf8]) ? 這里"|"是或的意思,就是mb_strlen()的第二個(gè)參數(shù)是編碼形式GBK或者GB2312或者utf8
? ? ?要使用mb_strlen()方法要把php.ini里面的extension=php_mbstring.dll 這個(gè)取消禁用才行,不然調(diào)用不到這個(gè)方法
這里的mb是multiByte,多字節(jié)的意思
3.為什么英文字符是一個(gè)字節(jié),中文字符有時(shí)是2個(gè)字節(jié),有時(shí)是3個(gè)字節(jié)?
答:計(jì)算機(jī)最開始的時(shí)候是純英文的,所有的字符不到128種變化因此用8位表示的話就是
0 000 0000 ?到 ?0 111 1111之間的變化
中文的變化更多 ?在GBK和GB2312模式下需要2個(gè)字節(jié)
UTF8下加入了更多的變化,所以要3個(gè)字節(jié)
轉(zhuǎn)載于:https://www.cnblogs.com/ggbd-lie/p/3261073.html
總結(jié)
以上是生活随笔為你收集整理的字符串长度(PHP学习)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: hadoop MultipleInput
- 下一篇: 递归算法php,php递归算法经典实例