php 中文字符串截取函数mb_substr实例解释,左右截取,以及中文长度计算mb_strlen,包含字符串strpos
PHP
0
string mb_substr ( string $str , int $start [, int $length = NULL [, string $encoding = mb_internal_encoding() ]] )-截取字符串
(PHP 4 >= 4.0.6, PHP 5)
$str 要获取字符串的目标字符串(字符串起始位置为0)
$start,$str中要使用的第一个字符的位置
$length,获取的子字符串的长度(注意不是结束位置)
$encoding,可指定字符编码(一般用于处理中文字符时使用,同时这个问题碰到的非常多)
总结:
1、在处理英文字符串的时候,该函数的第四个参数($encoding)可以忽略。
2、在处理中文字符串的时候,就要小心了,一定要考虑编码问题,编码不同,中文的值也不同。
3、在中文字符串导入数据库时,就显得更为重要了。
4、处理字符串或文本的编码能力,是衡量程序员功力的一项标准。
substr() 函数返回字符串的一部分。
注释:如果 start 参数是负数且 length 小于或等于 start,则 length 为 0。
echo substr("Hello world",6,6)."
"; echo substr("Hello world",0,-1)."
"; echo substr("Hello world",-10,-2)."
";?>
语法
substr(string,start,length)
参数 | 描述 |
---|---|
string | 必需。规定要返回其中一部分的字符串。 |
start | 必需。规定在字符串的何处开始。
|
length | 可选。规定要返回的字符串长度。默认是直到字符串的结尾。
|
编写程序的时候,经常要处理字符串,最基本就是字符串的查找,在php检测字符串中是否包含指定字符串可以使用正则,如果你对正则不了解,那么有几个函数可以为您提供方便。
strpos() 函数判断字符串中是否包含某字符串 https://www.jb51.net/article/154741.htm
1. strstr strstr() 函数搜索一个字符串在另一个字符串中的第一次出现。 该函数返回字符串的其余部分(从匹配点)。如果未找到所搜索的字符串,则返回 false。 代码如下:
1
2
3
4
5
6
7 |
/*如手册上的举例*/ $email = 'user@example.com' ; $domain = strstr ( $email , '@' ); echo $domain ; // prints @example.com ?> |
1
2
3
4
5 |
if ( strpos ( 'www.jb51.net' , 'jb51' ) !== false){ echo '包含jb51' ; } else { echo '不包含jb51' ; } |
1
2
3 |
$str = 'abc' ; $needle = 'a' ; $pos = strpos ( $str , $needle ); // 返回第一次找到改字符串的位置,这里返回为1,若查不到则返回False |
1
2
3
4
5
6
7
8
9 |
function checkstr( $str ){ $needle = 'a' ; //判断是否包含a这个字符 $tmparray = explode ( $needle , $str ); if ( count ( $tmparray )>1){ return true; } else { return false; } } |
1
2
3
4
5
6 |
/* $str1 = " ; if ( substr ( $str1 ,-8)== ".dll" ){ echo substr ( $str1 ,0,-4); } |
1
2
3
4
5
6
7
8
9
10
11
12 |
function check_str( $str , $substr ) { $nums =substr_count( $str , $substr ); if ( $nums >=1) { return true; } else { return false; } } |
版权声明:除非特别标注原创,其它均来自互联网,转载时请以链接形式注明文章出处。