日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

php内置函数和扩展,PHP 内置函数strlen 和mbstring扩展函数mb_strlen的区别

發(fā)布時間:2025/3/19 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php内置函数和扩展,PHP 内置函数strlen 和mbstring扩展函数mb_strlen的区别 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

#EXAMPLE

$str_uncode = "簡體中文Chinese(Simplified)";

//統(tǒng)計字符串長度

echo strlen($str_uncode).'
';//結(jié)果:31

echo mb_strlen($str_uncode, 'UTF-8').'
';結(jié)果:23

echo mb_strlen($str_uncode, 'GBK').'
';結(jié)果:25

echo mb_strlen($str_uncode, 'GB2312').'
';結(jié)果27

結(jié)果分析:

strlen 把一個中文按3字節(jié)算(復(fù)雜的漢字會按4字節(jié)算)

mb_strlen ?'UTF-8'編碼 一個漢字按一個字節(jié)位來算

PHP內(nèi)置的字符串長度函數(shù)strlen無法正確處理中文字符串,它得 到的只是字符串所占的字節(jié)數(shù)。對于GB2312的中文編碼,strlen得到的值是漢字個數(shù)的2倍,而對于UTF-8編碼的中文,就是3倍的差異了(在 UTF-8編碼下,一個漢字占3個字節(jié))。

采用mb_strlen函數(shù)可以較好地解決這個問題。mb_strlen的用法和 strlen類似,只不過它有第二個可選參數(shù)用于指定字符編碼。例如得到UTF-8的字符串$str長度,可以用 mb_strlen($str,'UTF-8')。

如果省略第二個參數(shù),則會使用PHP的內(nèi)部編碼。內(nèi)部編碼可以通過 mb_internal_encoding()函數(shù)得到。

mb_strlen并不是PHP核心函數(shù),使用前需要確保在php.ini中加載了php_mbstring.dll,即確保“extension=php_mbstring.dll”這一行存在并且沒有被注釋掉,否則會出現(xiàn)未定義函 數(shù)的問題。

MySQL--(了解)可能會用到的內(nèi)置函數(shù)

mysql內(nèi)置函數(shù)列表可以從mysql官方文檔查詢,這里僅分類簡單介紹一些可能會用到的函數(shù).1 數(shù)學(xué)函數(shù)abs(x)pi()mod(x,y)sqrt(x)ceil(x)或者ceiling(x)rand ...

php2go - Go 實現(xiàn) PHP 常用內(nèi)置函數(shù)

[轉(zhuǎn)]http://www.syyong.com/Go/php2go-Use-Golang-to-implement-PHP-s-common-built-in-functions.html 使用Go ...

8. Smarty3:模版中的內(nèi)置函數(shù)

smarty3中對內(nèi)置函數(shù)的修改比較大,加入了很多新的功能:變量聲明.表達式,流程控制,函數(shù).數(shù)組等.可是建議不要在模版中去使用過于復(fù)雜的邏輯,而是要盡量將一些程序設(shè)計邏輯寫到PHP中,并在模版中採用 ...

PHP不使用內(nèi)置函數(shù)intval(),實現(xiàn)字符串轉(zhuǎn)整數(shù)

平時我們用PHP時,將字符串轉(zhuǎn)化為整型時,一般都是使用 intval() 內(nèi)置函數(shù),那么如果我們自己寫,怎么寫一個呢? 此時我們可以利用 ASCII 碼計算得整數(shù)的特性,因為每個字符都對應(yīng)一個?ASC ...

Entity Framework 6 Recipes 2nd Edition(11-12)譯 -> 定義內(nèi)置函數(shù)

11-12. 定義內(nèi)置函數(shù) 問題 想要定義一個在eSQL 和LINQ 查詢里使用的內(nèi)置函數(shù). 解決方案 我們要在數(shù)據(jù)庫中使用IsNull 函數(shù),但是EF沒有為eSQL 或LINQ發(fā)布這個函數(shù). 假設(shè)我 ...

Oracle內(nèi)置函數(shù):時間函數(shù),轉(zhuǎn)換函數(shù),字符串函數(shù),數(shù)值函數(shù),替換函數(shù)

dual單行單列的隱藏表,看不見 但是可以用,經(jīng)常用來調(diào)內(nèi)置函數(shù).不用新建表 時間函數(shù) sysdate 系統(tǒng)當(dāng)前時間 add_months 作用:對日期的月份進行加減 寫法:add_months(日期 ...

python內(nèi)置函數(shù)

python內(nèi)置函數(shù) 官方文檔:點擊 在這里我只列舉一些常見的內(nèi)置函數(shù)用法 1.abs()[求數(shù)字的絕對值] >>> abs(-13) 13 2.all() 判斷所有集合元素都為真的 ...

DAY5 python內(nèi)置函數(shù)+驗證碼實例

內(nèi)置函數(shù) 用驗證碼作為實例 字符串和字節(jié)的轉(zhuǎn)換 字符串到字節(jié) 字節(jié)到字符串

python之常用內(nèi)置函數(shù)

python內(nèi)置函數(shù),可以通過python的幫助文檔 Build-in Functions,在終端交互下可以通過命令查看 >>> dir("__builtins__&quo ...

隨機推薦

在Linux上運行ASP.NET vNext

最新的ASP.NET vNext完全開源且可以跨多個平臺運行,在Windows環(huán)境下我嘗試了下,幾乎沒花什么工夫就跑起了Sample,而在Linux環(huán)境下則要多花了不少時間,所以特別記錄下整個過程,希 ...

獲取HTML

public class GetHtml { public string GetWebRequest(string url) { Uri uri = new Uri(url); WebRequest ...

最精簡的IOCP封裝

最精簡的IOCP封裝,DELPHI XE8直接編譯通過.Winsock2.pas即使用DELPHI自帶的,相信XE7也能編譯,或者XE6,XE5也能. 單說Winsock2.pas,我見過無數(shù)種版本的 ...

pku3668 Game of Lines

http://poj.org/problem?id=3668 水題,STL #include #include using namespace ...

cf500C New Year Book Reading

C. New Year Book Reading time limit per test?2 seconds memory limit per test?256 megabytes input?sta ...

混淆篇之原生DOM操作方法小結(jié)

1.0?? DOM結(jié)構(gòu) 1.1先來看結(jié)構(gòu)圖: 父節(jié)點?? ??? ?兄弟節(jié)點?? ??? ?當(dāng)前節(jié)點?? ??? ??? ?屬性節(jié)點?? ??? ??? ?子節(jié)點?? ??? ?兄弟節(jié)點一般任意一個節(jié) ...

[jbdj]SpringMVC框架(1)快速入門

1)springmvc快速入門(傳統(tǒng)版) 步一:創(chuàng)建springmvc_demo一個web應(yīng)用 步二:導(dǎo)入springioc,springweb , springmvc相關(guān)的jar包 步三:在/WEB ...

Jetty的工作原理

Jetty的工作原理 Jetty 的基本架構(gòu) Jetty 目前的是一個比較被看好的 Servlet 引擎,它的架構(gòu)比較簡單,也是一個可擴展性和非常靈活的應(yīng)用服務(wù)器,它有一個基本數(shù)據(jù)模型,這個數(shù)據(jù)模型就 ...

asp.net導(dǎo)入后臺代碼

public void Upload(string information){ int Bank = 0; for (int i = 0; i

總結(jié)

以上是生活随笔為你收集整理的php内置函数和扩展,PHP 内置函数strlen 和mbstring扩展函数mb_strlen的区别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。