Two php string truncation functions are provided. they can automatically recognize Chinese characters. if you are intercepting an article, this is a good one. if you like it, come and check it out. Article 1: & lt ;? Phpheader (& quot; content-ty
Two php string truncation functions are provided. they can automatically recognize Chinese characters. if you are intercepting an article, this is a good one. if you like it, come and check it out.
Article 1:
-
- Header ("content-type: text/html; charset = utf-8 ");
- Function strcut ($ string, $ length, $ dot = '...', $ charset = 'utf-8 ')
- {
- $ Strlen = strlen ($ string );
- If ($ strlen <= $ length) return $ string;
- $ Strcut = '';
- If (strtolower ($ charset) = 'utf-8 ')
- {
- $ N = $ tn = $ noc = 0;
- While ($ n <$ strlen)
- {
- $ T = ord ($ string [$ n]);
- If ($ t = 9 | $ t = 10 | (32 <= $ t & $ t <= 126 )){
- $ Tn = 1; $ n ++; $ noc ++;
- } Elseif (194 <=$ t & $ t <= 223 ){
- $ Tn = 2; $ n + = 2; $ noc + = 2;
- } Elseif (224 <=$ t & $ t <= 239 ){
- $ Tn = 3; $ n + = 3; $ noc + = 3;
- } Elseif (240 <=$ t & $ t <= 247 ){
- $ Tn = 4; $ n + = 4; $ noc + = 4;
- } Elseif (248 <=$ t & $ t <= 251 ){
- $ Tn = 5; $ n + = 5; $ noc + = 5;
- } Elseif ($ t = 252 | $ t = 253)
- {
- $ Tn = 6; $ n + = 6; $ noc + = 6;
- }
- Else
- {
- $ N ++;
- }
- If ($ noc >=$ length) break;
- }
- If ($ noc> $ length) $ n-= $ tn;
- $ Strcut = substr ($ string, 0, $ n );
- }
- Else
- {
- $ Dotlen = strlen ($ dot );
- $ Maxi = $ length-$ dotlen-1;
- For ($ I = 0; $ I <$ maxi; $ I ++)
- {
- $ Strcut. = ord ($ string [$ I]) & gt; 127? $ String [$ I]. $ string [++ $ I]: $ string [$ I];
- }
- }
- Var_dump ($ strcut );
- Return $ strcut;
- }
- Echo "jjjkkklll ";
- Echo strcut ("to kk to kkkklllllllllllmmmmmmmmmmmmm to Dongyang", 12)
Section 2:
- Function splitstr ($ str, $ len ){
- If ($ len <= 0 ){
- Return false;
- }
- Else {
- $ Slen = strlen ($ str );
- If ($ len> = $ slen)
- Return $ str;
- Else {
- For ($ I = 0; $ I <($ len-1); $ I ++ ){
- If (ord (substr ($ str, $ I, 1)> 0xa0)
- $ I ++;
- }
- If ($ I >=$ len)
- Return substr ($ str, 0, $ len );
- Elseif (ord (substr ($ str, $ I, 1)> 0xa0)
- Return substr ($ str, 0, $ len-1 );
- Else
- Return substr ($ str, 0, $ len );
- }
- }
- }