strstr()函数,判断字符串是否包含

发布时间:2022-08-30浏览次数:780 次
strstr()函数用于判断,$string1中是否包含$string2的函数,如果包含,则返回从$string2第一次出现的位置开始到结束的所有字符串,如果未

strstr()函数用于判断,$string1中是否包含$string2的函数,如果包含,则返回从$string2第一次出现的位置开始到结束的所有字符串,如果未查找到,则返回false。语法为:

strstr(string $string1,string $string2[, $before])

注意:strstr()函数还有第三个参数$before,该参数默认为false,即返回从被查找字符串第一次出现的位置开始到结束的所有字符串,如果将该参数设为true,则会返回$string2第一次出现的位置之前的所有字符(比如说,在一系列邮箱中,仅获取@符号之前的用户名部分)。

$string = 'Hello World';

var_dump(strstr($string,'a'));
// boolean false

var_dump(strstr($string,'l'));
// llo World

var_dump(strstr($string,'l',true));
// He

var_dump(strstr('qietujiang@qietujiang.com','@',true));
// qietujiang

另外需注意,strstr()函数是大小写敏感的,如果不想区分大小写,则可使用stristr()函数,如下:

$string = 'Hello World';

var_dump(strstr($string,'L')); // boolean false
var_dump(stristr($string,'L')); // llo World

PHP中还有strpos()函数substr()函数等,都可用于实现查找A字符串中是否包含B字符串的需求,但是每个函数的侧重点略有不同,如:strpos()函数更侧重找出第一次匹配到的位置,substr()函数侧重截取等,在仅需判断是否包含子字符串的场景下,使用strstr()会更方便一些,使用strpos()函数则需要区分,位置为0和未查找到false的情况。具体细节需大家细细揣摩,以便在合适的场景使用合适的函数。

扫一扫,在手机上查看