1、函数说明
- strpos($string, $search[, $offset]):在指定字符串中查找目标字符串第一次出现的位置
- stripos($string, $search[, $offset]):忽略大小写的去查找
- strrpos($string, $search[, $offset]):在指定字符串中查找目标字符串最后一次出现的位置
- strripos($string, $search[, $offset]):忽略大小写的去查找最后一次出现的位置
- strstr|strchr($string, $search[, $before_needle]):查找字符串的首次出现,返回的是字符串
- stristr($string, $search[, $before_needle]):忽略大小写的去查找
- strrchr($string, $search):查找指定字符在字符串中的最后一次出现
- substr($string, $start[, $length]):截取字符串
2、使用
$str = 'php-vue-mysql-mail@com';
strchr($str,'m');
# mysql-mail@cn 匹配第1个 m 并截取往后部分
strrchr($str,'m');
# mail@cn 匹配最后1个 m 并截取往后部分
substr($str, strpos($str,'-')+1, strrpos($str,'-')-strpos($str,'-')-1);
# vue-mysql 截取第1个`-`和最后1个`-`中间部分
substr($str,0,strpos($str,'@'));
// 或 strstr($str,'@',true);
// 或 strchr($str,'@',true);
# php-vue-mysql-mail 截取 @ 前面的部分
substr($str,strpos($str,'@'));
// 或 strstr($str,'@');
// 或 strchr($str,'@');
// @cn 截取 @ 后面部分,包含 @
substr($str,strpos($str,'@')+1);
// cn 截取 @ 后面部分,不包含 @