在PHP中,我们可以使用多种方法来查询字符串中的字符,以下是一些常见的方法:
1、使用strpos()
函数
2、使用strchr()
函数
3、使用stristr()
函数
4、使用mb_strpos()
函数(对于多字节字符集)
1. 使用strpos()
函数
strpos()
函数用于查找字符串中某个字符或子串首次出现的位置,如果找到,返回第一次出现的位置;如果没有找到,返回FALSE。
语法:
strpos(string, find, start)
参数说明:
string:必需,规定被搜索的字符串。
find:必需,规定要查找的字符或字符串。
start:可选,规定开始查找的位置。
示例代码:
<?php $mystring = "Hello world!"; $findme = "world"; $pos = strpos($mystring, $findme); if ($pos === false) { echo "The string '$findme' was not found in '$mystring'"; } else { echo "The string '$findme' was found in '$mystring'"; echo " and exists at position $pos"; } ?>
2. 使用strchr()
函数
strchr()
函数用于查找字符串中某个字符或子串最后一次出现的位置,并返回从该位置到字符串结束的部分,如果找不到,返回FALSE。
语法:
strchr(string, search)
参数说明:
string:必需,规定被搜索的字符串。
search:必需,规定要查找的字符或字符串。
示例代码:
<?php $email = "john@example.com"; $domain = strchr($email, "@"); echo $domain; // 输出: @example.com ?>
3. 使用stristr()
函数
stristr()
函数用于查找字符串中某个字符或子串首次出现的位置,不区分大小写,如果找到,返回第一次出现的位置;如果没有找到,返回FALSE。
语法:
stristr(haystack, needle, before_needle)
参数说明:
haystack:必需,规定被搜索的字符串。
needle:必需,规定要查找的字符或字符串。
before_needle:可选,如果设置为true,则返回needle之前的内容,默认为false。
示例代码:
<?php $email = "john@example.com"; $domain = stristr($email, "EXAMPLE"); echo $domain; // 输出: example.com ?>
4. 使用mb_strpos()
函数(对于多字节字符集)
mb_strpos()
函数用于查找字符串中某个字符或子串首次出现的位置,支持多字节字符集,如果找到,返回第一次出现的位置;如果没有找到,返回FALSE。
语法:
mb_strpos(string, find, start, encoding)
参数说明:
string:必需,规定被搜索的字符串。
find:必需,规定要查找的字符或字符串。
start:可选,规定开始查找的位置。
encoding:可选,规定字符串的编码,如果省略,则使用内部字符编码。
示例代码:
<?php $mystring = "你好,世界!"; $findme = "世界"; $pos = mb_strpos($mystring, $findme); if ($pos === false) { echo "The string '$findme' was not found in '$mystring'"; } else { echo "The string '$findme' was found in '$mystring'"; echo " and exists at position $pos"; } ?>
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/682125.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复