两款php 截取字符串函数
提供两款php 截取字符串函数,他们能自动识别中文哦,如果你是截取文章这个很不错啊,喜欢就进来看看吧。
第一款:
<?php 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 ]) > 127 ? $string [ $i ]. $string [++ $i ] : $string [ $i ]; } } var_dump( $strcut ); return $strcut ; } echo "jjjkkklll" ; echo strcut( "向kk向向向kk向向向kk向向kkklllllllllllmmmmmmmmmmmmmmm向东阳" ,12)第二款:
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 ); } } }查看更多关于两款php 截取字符串函数 - php函数的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did30710