PHP擷取字串長度,php哪個函式能取得字串長度

時間 2022-07-24 05:17:19

1樓:勢芷藍

$str = '任意長度字串';

echo mb_substr($str,0,100,'字符集');

php哪個函式能取得字串長度

2樓:匿名使用者

php對中文字串的處理一直困擾於剛剛接觸php開發的新手程式設計師。下面簡要的剖析一下php對中文字串長度的處理:

php自帶的函式如strlen()、mb_strlen()都是通過計算字串所佔位元組數來統計字串長度的,乙個英文本元佔1位元組。例:

$enstr = 『hello,china!』;

echo strlen($enstr); // 輸出:12

而中文則不然,做中文**一般會選擇兩種編碼:gbk/gb2312或是utf-8。utf-8能相容更多的字元,所以受到很多站長的喜愛。

gbk與utf-8對中文的編碼不同,導致中文在gbk與utf-8編碼下所佔位元組也有差異。

gbk編碼下每個中文字元所佔位元組為2,例:

$zhstr = 『您好,中國!』;

echo strlen($zhstr); // 輸出:12

utf-8編碼下每個中文字元所佔位元組為3,例:

$zhstr = 『您好,中國!』;

echo strlen($zhstr); // 輸出:18

那麼如何計算這組中文字串的長度呢?有人可能會說gbk下獲取中文字串長度除以2,utf-8編碼下除以3不就行了嗎?但是您要考慮字串並不老實,99%的情況會以中英混合的情況出現。

這是wordpress中的一段**,主要思想就是先用正則將字串分解為個體單元,然後再計算單元的個數即字串的長度,**如下(只能處理utf-8編碼下的字串):

$zhstr = 『您好,中國!』;

$str = 『hello,中國!』;

// 計算中文字串長度

function utf8_strlen($string = null)

echo utf8_strlen($zhstr); // 輸出:6

echo utf8_strlen($str); // 輸出:9 收起

php擷取一段字元 計算它的長度,多餘的用「...」代替

3樓:匿名使用者

function cut_str($sourcestr,$cutlength)

elseif ($ascnum>=192) //如果ascii位高與192,

elseif ($ascnum>=65 && $ascnum<=90) //如果是大寫字母,

else //其他情況下,包括小寫字母和半形標點符號,

}if ($str_length>$cutlength)

return $returnstr;

}以上是函式,引數是相應字串和該字串長度,字串的長度可以通過strlen函式獲取!希望對你有幫助!

4樓:免費模板網

判斷字串的長度呢

functiuon substr($str)else

}好像是這個思路

5樓:探索者西瓜

你好,有乙個函式很神奇,它深藏不露,功能「強大」,但又很少讓我們發現,那就是mb_strimwidth函式,它是由mbstring庫擴充套件而來,可以在php.ini中開啟這個元件.便可隨心所欲的使用了.

希望對你有所幫助!

6樓:匿名使用者

去檢測第幾個位元組開始是中文字啊

asp擷取字串長度

你沒搞懂伺服器端的變數和瀏覽器端的變數不能通用。你要這樣寫 反正我寫的傳值是正確的,我寫的程式就是這樣傳值的。至於你說沒用肯定還有其它問題。寫在你的asp迴圈裡 dim neirong neirong nohtml s s是你的資料變數if len neirong 4 thenresponse.wr...

PHP中使用substr擷取字串出現中文亂碼問題該怎麼辦

給你乙個我自己寫的字串擷取類,不會出現亂碼。function displaystr str,start,lenth elseif substr a,0,3 110 elseif substr a,0,4 1110 n elseelseif substr a,0,3 110 elseif substr...

asp擷取字串的函式怎麼寫,asp擷取字串

left 字串,擷取長度 mid 字串,起始位置,擷取長度 function cutstr str,nums,uns 字串擷取 if len str 1 or not isnumeric n then exit function lw strlength str if lw nums then cu...

php中讀取字串前n個字元,PHP中讀取字串前N個字元

php中讀取字串前n個字元的 如下 str aaaaaaaaabbbbbbbbbbbbbbbb echo substr str 0 5 echo mb substr str 0 5 中文用 string mb substr string str int start int length string...

php 獲取字串內特定的值,php 怎樣獲取字串裡面某些值

for var t in json 你這個資料應該是json格式。在php中,要使用json decode 解析成物件或者陣列,這樣子才方便使用。不過這裡有個侷限,舉個例子 bad json 鍵值對,要用雙引號,單引號是無效的。所以返回null。json decode bad json null 你...