- /**
- * Method Library-intercept string
- * @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;
- }
Copy Code
Example 2,php detects if a string exists:
- /**
- * Method Library-whether a string exists
- * @param string $str: Character or string
- * @param string $string: String
- * @return String Example: $str = ' $string ' = ' 1234 ' returns TRUE
- */
- Public Function Is_str_exist ($STR, $string) {
- $string = (string) $string;
- $str = (string) $str;
- Return Strstr ($string, $str) ===false? False:true;
- }
Copy Code |