php常用字符串查找函数strstr()与strpos()实例分析

1. strstr() 函数

strstr() 函数是 PHP 中用于查找目标字符串中是否包含某个子串的函数。该函数的语法如下:

strstr($str, $search, $before_search)

其中,$str 表示要查找的字符串,$search 表示要查找的子串,$before_search 表示是否返回 $search 之前的字符串(可选参数,默认为 false)。

1.1 示例

假设有一个字符串 $str,其内容为 "This is a test string.",需要查找其中是否包含 "test" 这个子串,可以使用如下代码:

$str = "This is a test string.";

$search = "test";

$result = strstr($str, $search);

if ($result) {

echo "字符串中包含 $search。";

} else {

echo "字符串中不包含 $search。";

}

输出结果为:字符串中包含 test。

1.2 说明

该函数返回第一个出现 $search 的位置及其后面的所有字符,若没有找到,则返回 false。可选参数 $before_search 为 true 时返回 $search 之前的字符串。

1.3 应用场景

该函数常用于查找字符串中是否包含某些关键字或标识符。

2. strpos() 函数

strpos() 函数也是 PHP 中用于查找目标字符串中是否包含某个子串的函数,与 strstr() 函数不同的是,该函数返回的是目标字符串中第一次出现该子串的位置。该函数的语法如下:

strpos($str, $search, $offset)

其中,$str 表示要查找的字符串,$search 表示要查找的子串,$offset 表示在 $str 中开始查找的位置(可选参数,默认为 0)。

2.1 示例

还是以字符串 $str = "This is a test string." 为例,查找其中第一次出现 "test" 的位置可以使用如下代码:

$str = "This is a test string.";

$search = "test";

$result = strpos($str, $search);

if ($result !== false) {

echo "字符串中 $search 的位置为:$result。";

} else {

echo "字符串中不包含 $search。";

}

输出结果为:字符串中 test 的位置为:10。

2.2 说明

该函数返回第一次出现 $search 的位置,若没有找到,则返回 false。可选参数 $offset 表示在 $str 中开始查找的位置,若不指定则从字符串起始位置开始查找。

2.3 应用场景

该函数常用于查找字符串中某个子串出现的位置或判断字符串中是否包含某些特定的字符。

后端开发标签