substr()函數(shù)用來(lái)截取字符串,但是對(duì)于中文字符會(huì)出現(xiàn)問(wèn)題,而mb_substr()和mb_strcut這兩個(gè)函數(shù)可以,用法與substr()相似,只是在函數(shù)最后要加入多一個(gè)參數(shù),以設(shè)定字符串的編碼,使用這兩個(gè)函數(shù)需要在php.ini中把php_mbstring.dll打開。
1
2
3
4
5
6
7
|
<?php header( "content-type:text/html; charset=utf-8" ); $string = "你好我好大家好" ; echo strlen ( $string ). '</br>' ; echo mb_substr( $string ,0,4, 'utf-8' ). '...</br>' ; echo mb_strcut( $string ,0,4, 'utf-8' ). '...' ; ?> |
輸出的結(jié)果:
21
你好我好...
你...
從上面的例子可以看出,mb_substr是按字來(lái)分割字符,而mb_strcut是按字節(jié)來(lái)分割字符,但是都不會(huì)產(chǎn)生半個(gè)字符的現(xiàn)象。