PHP intercepts string functions to share, PHP intercepts strings
Often see a novice ask PHP there is no similar to the ASP of the left function or the right function, the implementation of a string to intercept a character or the beginning of the n characters of a function. The answer is of course there is. PHP substr function can be done, except that PHP has two functions in one, and here to share a more excellent function of intercepting the string.
Copy CodeThe code is as follows:
/**
* Method Library-intercept string-"The function author is unknown"
* @param string $string strings
* @param int $length character length
* @param string $dot whether to add after interception ...
* @param string $charset encoding
* @return String
*/
Public Function Cutstr ($string, $length, $dot = ' ... ', $charset = ' utf-8 ') {
if (strlen ($string) <= $length) {
return $string;
}
$string = Str_replace (' & ', ' ' ', ' < ', ' > '), Array (' & ', ' "', ' < ', ' > '), $string);
$strcut = ";
if (Strtolower ($charset) = = ' Utf-8 ') {
$n = $tn = $noc = 0;
while ($n < strlen ($string)) {
$t = Ord ($string [$n]); Asciiֵ
if ($t = = 9 | | $t = = 10 | | (<= $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 + = 2;
} elseif (<= $t && $t <= 247) {
$tn = 4; $n + = 4; $noc + = 2;
} elseif (248 <= $t && $t <= 251) {
$tn = 5; $n + = 5; $noc + = 2;
} elseif ($t = = 252 | | $t = = 253) {
$tn = 6; $n + = 6; $noc + = 2;
} else {
$n + +;
}
if ($noc >= $length) {
Break
}
}
if ($noc > $length) {
$n-= $tn;
}
$strcut = substr ($string, 0, $n);
} else {
for ($i = 0; $i < $length; $i + +) {
$strcut. = Ord ($string [$i]) > 127? $string [$i]. $string [+ + $i]: $string [$i];
}
}
$strcut = Str_replace (' & ', ' ' ', ' < ', ' > '), Array (' & ', ' "', ' < ', ' > '), $strcut);
return $strcut. $dot;
}
The above is the whole content of this article, I hope you can like.
http://www.bkjia.com/PHPjc/951636.html www.bkjia.com true http://www.bkjia.com/PHPjc/951636.html techarticle PHP intercept string function sharing, PHP intercept string often see a novice ask PHP there is no similar to the ASP's left function or right function, the implementation of intercepting a string to start N characters ...