欢迎访问宙启技术站
智能推送

PHP的strstr函数的用法详解,实现字符串查找和截取功能。

发布时间:2023-06-10 19:38:11

strstr()函数是PHP中用来查找子字符串的函数,该函数可以快速定位字符串中指定的子字符串位置,并返回从该位置开始到字符串的末尾的所有字符。

一、语法

strstr(string $haystack, mixed $needle, bool $before_needle = false): mixed

参数说明:

- haystack: 必需,要查找的字符串

- needle: 必需,查找的子字符串

- before_needle: 可选,是否返回needle之前的部分,默认为false

二、返回值

返回的结果取决于$needle$haystack:

- 如果成功找到$needle,则返回从该位置开始到字符串的末尾的所有字符。

- 如果未找到$needle,则返回false。

三、示例

假设有一个字符串$str='I love PHP. PHP is good.',我们将使用strstr()函数找到其中的子字符串'PHP'。

1. 查找'PHP'并返回该位置之后的所有字符。

代码:

$str = 'I love PHP. PHP is good.';
$substring = strstr($str, 'PHP');
echo $substring;

输出:

PHP. PHP is good.

2. 查找'php'并返回false。

代码:

$str = 'I love PHP. PHP is good.';
$substring = strstr($str, 'php');
var_dump($substring);

输出:

bool(false)

3. 查找'PHP'并返回该位置之前的所有字符。

代码:

$str = 'I love PHP. PHP is good.';
$substring = strstr($str, 'PHP', true);
echo $substring;

输出:

I love

四、应用场景

1. 字符串查找

- 判断字符串中是否包含某个子字符串。

- 查找子字符串在字符串中第一次出现的位置。

- 查找字符串中最后一个子字符串的位置。

2. 字符串截取

- 获取字符串中从起始位置到指定位置的子字符串。

- 获取字符串中指定位置到结束位置的子字符串。

- 获取字符串中两个指定子字符串之间的子字符串。

五、注意事项

- 在 PHP 7.3.x 及之前的版本中,第三个参数 bool $before_needle 默认为 false。在 PHP 8.0.x 及之后的版本中,默认为 true

- 它区分大小写。对于不区分大小写的字符串匹配,请使用stristr()函数。