stristr()
是 PHP 的一个内置函数,用于在一个字符串中搜索指定字符串的第一次出现的位置,如果该字符串存在则返回该字符串的其余部分。
它是一个二进制安全的函数(二进制安全函数的意思是——一个可以在二进制文件上执行而不修改文件内容的函数)。
stristr()
是一个不区分大小写 函数,它类似于strstr()。这两个函数都用于一个字符串中指定字符串第一次出现的位置。它们之间的唯一区别是 stristr() 是不区分大小写,而 strstr() 是 区分大小写 函数。
注意: 这个函数是二进制安全和不区分大小写的。 stristr()函数中'I'代表大小写不敏感。
语法
PHP stristr()函数的语法如下:
stristr ($string, $search, $before_search)
参数
参数 | 说明 | 可选/必须 |
---|---|---|
string | 该参数为指定要搜索的原字符串。 | 必须 |
search | 指定要搜索的字符串。如果这个参数是一个数字或整数值而不是一个字符串,那么它将使用它作为 ASCII 值。 | 必须 |
before_search | 默认值为FALSE。如果我们将其设置为 TRUE,那么它将返回第一次出现搜索参数之前的字符串,即返回搜索定位之前的部分。 | 可选 |
返回值
PHP stristr() 返回包括匹配搜索的剩余字符串,如果找不到指定搜索的字符串则返回 FALSE。
技术细节
PHP 版本支持 | PHP 4 及以上版本支持此功能。 |
返回值 | 返回字符串的其余部分,如果没有找到要搜索的字符串,则返回 False。 |
更新日志 |
|
示例
下面是一些示例,您可以通过这些示例了解程序中stristr()函数的用法。
例子1
<?php
$string = "Welcome to yxjc123";
$search1 = "y";
echo stristr($string, $search1);
echo '</br>';
$search2 = "c"; //不区分大小写
echo stristr($string, $search2);
echo '</br>';
echo stristr($string, "welcome");
?>
输出:
yxjc123
come to yxjc123
Welcome to yxjc123
come to yxjc123
Welcome to yxjc123
示例2
在本例中,我们使用第三个参数,即 $before_search = true,这将返回第一次出现 $search1 变量之前的字符串部分,否则为布尔值 false.
<?php
$string = "Welcome to yxjc123";
$before_search = true;
$search1 = "k";
echo stristr($string, $search1, $before_search);
echo '</br>';
$search2 = "A";
var_dump( stristr($string, $search2, $before_search) );
echo '</br>';
$search3 = "b";
var_dump(stristr($string, $search3, $before_search) );
?>
输出:
bool(false)
bool(false)
bool(false)
var_dump() 函数可以打印布尔值,如果是echo则显示不了这样的信息。
示例3
在这个示例中,我们将传递一个整数在 $search 而不是字符串或字符中。它将整数值视为 ASCII 值。
<?php
var_dump(stristr("I want to see the world", 117)); //117 是小写 u 的 ASCII 值
echo '</br>';
var_dump(stristr("I want to see the world", 119)); //119 是小写 w 的 ASCII 值。
echo '</br>';
echo stristr("I want to see the world", 78); //78 是大写 N 的 ASCII 值。
?>
输出:
bool(false)
string(21) "want to see the world"
nt to see the world
string(21) "want to see the world"
nt to see the world
注意: var_dump() 函数可以打印布尔值,如果是echo则显示不了这样的信息。