PHP strlen()函數(shù)用法詳解
strlen() 可以返回「字符串」的「長度」。
語法
int strlen( $str )
參數(shù)
- $str:需要計算長度的字符串
返回值
返回字符串的長度「字節(jié)數(shù)」,空字符串、NULL、false 返回 0。
一、字符串
傳入「字符串」作為參數(shù),會返回字符串的長度,這也是最常用的方式。
實例:
var_dump(strlen('1234')); var_dump(strlen('abcd'));
輸出:
int(4)
int(4)
二、空格
strlen() 計算的是「字節(jié)數(shù)」而不是「字符」個數(shù),遇到「空格」時,長度也會+1。
實例:
# 一個空格 var_dump(strlen(' ')); # 兩個空格 var_dump(strlen(' ')); # 字符中夾雜空格 var_dump(strlen('a b c '));
輸出:
int(1)
int(2)
int(6)
三、整數(shù)和小數(shù)
雖然 strlen() 要求傳入string類型的參數(shù),但傳入「數(shù)值類型」也能計算長度,整數(shù)和小數(shù)和字符串一樣,都會計算字節(jié)數(shù)。
實例:
var_dump(strlen(123)); var_dump(strlen('123')); var_dump(strlen(123.1)); var_dump(strlen('123.1'));
輸出:
int(3)
int(3)
int(5)
int(5)
四、布爾類型
「布爾類型」比較特別, true 返回 1, false 返回 0。
實例:
var_dump(strlen(true)); var_dump(strlen(false));
輸出:
int(1)
int(0)
五、轉(zhuǎn)譯字符
「轉(zhuǎn)譯字符」算一個字節(jié),長度+1,但需要用「雙引號」包裹,單引號會被當(dāng)做字符串。
實例:
var_dump(strlen("\n")); var_dump(strlen("\n\r")); var_dump(strlen('\n'));
輸出:
int(1)
int(2)
int(2)
六、算數(shù)運算符
傳入的參數(shù)「不加引號」并包含「算數(shù)運算符」時,strlen() 會先運算,再計算運算結(jié)果的長度。
實例:
var_dump(strlen(1+1)); var_dump(strlen(5*5)); var_dump(strlen('1+1'));
輸出:
int(1)
int(2)
int(3)
實例:取反~同樣會先運算,再計算運算結(jié)果的長度
var_dump(strlen(~~10)); var_dump(strlen(~10));
輸出:
int(2)
int(3)
七、邏輯運算符
傳入的參數(shù)「不加引號」并包含「邏輯運算符」時,strlen() 會先運算,再計算運算結(jié)果的長度。
由于邏輯運算符的結(jié)果是 true 或 false ,所以他們的返回結(jié)果都是 1 或 0。
實例:
var_dump(strlen(1&1)); var_dump(strlen(1|0)); var_dump(strlen(!1));
輸出:
int(1)
int(1)
int(0)
八、特殊符號
「英文」的「特殊符號」算一個字節(jié),長度+1;「中文」的「特殊符號」算三個字節(jié),長度+3。
實例:
var_dump(strlen(";")); var_dump(strlen(";")); var_dump(strlen(',')); var_dump(strlen(','));
輸出:
int(3)
int(1)
int(3)
int(1)
九、中文
「UTF8編碼」的中文字符占3個字節(jié),長度+3;紫色「GB2321編碼」的中文字符占2個字節(jié),長度+2。
實例:
var_dump(strlen("中文")); var_dump(strlen('中文'));
輸出:
int(6)
int(6)
十、空與NULL
$str 為「空字符串」或為 NULL 時,返回長度 0。
實例:
var_dump(strlen('')); var_dump(strlen(null));
輸出:
int(0)
int(0)
到此這篇關(guān)于PHP strlen()函數(shù)用法詳解的文章就介紹到這了,更多相關(guān)PHP strlen()函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Mysql數(shù)據(jù)庫操作類( 1127版,提供源碼下載 )
Mysql數(shù)據(jù)庫操作類,學(xué)習(xí)php的朋友可以參考下。2010-12-12php時區(qū)轉(zhuǎn)換轉(zhuǎn)換函數(shù)
godaddy主機在國外。把站點建站國外,顯示時間時可能需要時區(qū)轉(zhuǎn)換,下面是個方便的工具函數(shù),用于時區(qū)轉(zhuǎn)換2014-01-01晉城吧對DiscuzX進(jìn)行的前端優(yōu)化要點
晉城吧的服務(wù)器在美國,延遲相對國內(nèi)略微要高一些,所以優(yōu)化就顯得非常重要。2010-09-09JavaScript+PHP實現(xiàn)視頻文件分片上傳的示例代碼
這篇文章主要介紹了基于JavaScript+PHP實現(xiàn)視頻文件分片上傳,視頻文件分片上傳,整體思路是利用JavaScript將文件切片,然后循環(huán)調(diào)用上傳接口 upload.php 將切片上傳到服務(wù)器,文中有詳細(xì)代碼供大家參考,需要的朋友可以參考下2024-02-02