This article mainly introduces the PHP interception of Chinese string functions, examples of PHP for the Chinese character string manipulation, attention Utf-8 and gb2312 encoding conversion problem, with a certain reference value, the need for friends can refer to the next
This article describes the PHP interception of Chinese string functions. The implementation method is as follows:
The code is as follows:
<?php//Chinese string intercept function Substr_zh ($string, $sublen, $start =0, $code = ' UTF-8 ') {if ($code = = ' UTF-8 ') {$pa = "/[\x01-\x7f ]| [\XC2-\XDF] [\x80-\xbf]|\xe0[\xa0-\xbf][\x80-\xbf]| [\xe1-\xef] [\X80-\XBF] [\x80-\xbf]|\xf0[\x90-\xbf][\x80-\xbf][\x80-\xbf]| [\xf1-\xf7] [\X80-\XBF] [\X80-\XBF] [\x80-\xbf]/]; Preg_match_all ($pa, $string, $t _string); if (count ($t _string[0])-$start > $sublen) {return join (' ', Array_slice ($t _string[0], $start, $sublen)). " ..."; Array_slice () takes a value out of the array according to the condition, parameter (array, start position, [length])}else{return join ("', Array_slice ($t _string[0], $start, $sublen)); }}else{$start = $start * *; $sublen = $sublen; $strlen = strlen ($string); $tmpstr = "; for ($i =0; $i < $strlen; $i + +) {if ($i > $start && $i < ($start + $sublen)) {if (Ord (substr ($string, $i, 1)) > 129) {//ord (): Returns the ASCII value of the first character of the string//substr (): Returns part of the string $tmpstr. = substr ($string, $i, 2); }else{$tmpstr. = substr ($string, $i, 1); }} if (Ord (substr ($string, $i, 1)) >129) {$i + +; } if (strlen ($TMPSTR) <$strlen) {$tmpstr. = "..."; }} return $tmpstr; }} $string = "Top of the roof up the dilemma 檲 on the stall Ken stuck to the right foot cute have"; Echo Substr_zh ($string, 10,0, ' gb2312 ');? >
Summary : The above is the entire content of this article, I hope to be able to help you learn.