查找字符串位置
- strpos($str,$src,$int):查找字符串首次出现的位置
注意:如果没找到,返回false,可能是第一个位置,也就是0,所以返回值需要用 === false
- stripos参数、意义同上,不区分大小写
- strrpos参数同上,查找字符串最后一次出现的位置
提取字符串
- substr($str,$start,[$length]) : 返回字符串的子串:从start开始提取【length长度】字符串
- strstr($str,$src,$before_needle) :查找字符串首次出现的位置,并返回字符串
在str里搜索第一个src,从src开始截取到最后字符串,如果before_needle为true,就是返回之前的字符串
- stristr同上,不区分大小写
- strchr是strstr的别名
- strrchr($str,$src)查找字符串最后一次出现的位置:在str里搜索最后一个src,从src开始截取到末尾
替换字符串的php函数
- str_replace(serach,replace,$str)字符串替换:
在str中找到search,替换成replace
- str_ireplace不区分大小写
- strtr($str,$from,$to)转换指定字符
例:strtr(“hilla warld”,“ia”,“eo”)-> hello world
- substr_replace($str,$replace,$start,[$length])替换字符串的子串,
在str字符串里,从start开始,直到length,替换成replace
字符串长度
- strlen
- mb_strlen
比较字符串
- strcmp($str1,$str2)二进制安全字符串比较
$str1>$str2,返回1;$str1<$str2, 返回-1;$str1=$str2,返回0
- strcasecmp同上,不区分大小写
- strnatcmp($str1,$str2)使用自然排序比较
strnatcmp(‘2a’,’10a’) -1 strnatcmp(‘10a’,’2a’) 1
- strnatcasecmp同上,不区分大小写
- strspn($subject, $mask, [$start, [$length]])计算字符串中全部字符都存在于指定字符集合中的第一段子串的长度 $subject:待检查的字符串 $mask:检查字符列表
去除空格
- ltrim
- rtrim
- trim
填充
- str_pad($input, $pad_length,$pad_string, $pad_type)
str_pad("Alien", 10, "-=", STR_PAD_LEFT); # 输出 "-=-=-Alien"
分割连接反转
- str_split:将字符串转换成数组
$str = "Hello Friend";
str_split($str); # ['H','e',...]
str_split($str, 3); # ['Hel','lo ',...]
- split:用正则将字符串转成数组
$date = "04/30/1973";
list($month, $day, $year) = split ('[/.-]', $date);
echo "Month: $month; Day: $day; Year: $year<br />\n";
- explode:将字符串分割成数组
- implode:将数组分割成字符串
- strrev:反转字符串
strrev("Hello world!"); // "!dlrow olleH"
- chunk_split:分割字符串
$str = "Hello world!";
chunk_split($str,6,"..."); # Hello ...world!...