PHP字符串学习之判断子串是不是存在「大小写不敏感」

1. 判断子串是否存在

1.1. strpos()

在 PHP 中,想要判断一个字符串是否包含另一个字符串,最常用的方法就是使用 strpos() 函数,该函数可以返回一个整数值,如果返回值为 false,则表示查找的字符串不存在。

具体的语法格式如下:

int strpos( string $haystack, mixed $needle, int $offset = 0 )

$haystack参数即代表被搜索的字符串,$needle参数则代表需要查找的字符串,$offset 参数则是可选参数,代表搜索的起始位置,默认从头开始搜索。

例如下面一段代码就是使用 strpos() 函数判断一个字符串是否包含指定的子串:

$str = "hello world";

$substr = "Hello";

if (strpos($str, $substr) !== false) {

echo 'The substring is found in the string.';

} else {

echo 'The substring is not found in the string.';

}

上面的代码中,我们声明了一个字符串 $str,再定义一个子串 $substr,然后使用 strpos() 函数在 $str 中进行查找。

需要注意的是,由于题目要求大小写不敏感,所以上面的代码虽然可以查找到 $substr,但是实际上是区分大小写的。那么要如何忽略大小写呢?

1.2. stripos()

在 stripos() 函数中,与 strpos() 函数的使用方法基本相同,只不过 stripos() 函数支持大小写不敏感的查找。

具体的语法格式如下:

int stripos( string $haystack, mixed $needle, int $offset = 0 )

使用方法如下:

$str = "hello world";

$substr = "Hello";

if (stripos($str, $substr) !== false) {

echo 'The substring is found in the string.';

} else {

echo 'The substring is not found in the string.';

}

上述代码就可以实现大小写不敏感的子串查找了。

后端开发标签