如何检查字符串是否不包含特定短语?
2022-08-30 15:30:18
如何反转函数 如何检查PHP中的字符串是否包含特定单词?
if (strpos($a,'are') !== false) {
echo 'true';
}
因此,如果在 中找不到,则会回显。true
are
$a
如何反转函数 如何检查PHP中的字符串是否包含特定单词?
if (strpos($a,'are') !== false) {
echo 'true';
}
因此,如果在 中找不到,则会回显。true
are
$a
代码如下:
if (strpos($a, 'are') !== false) {
// The word WAS found
}
表示在字符串中找到单词 WAS。如果删除 NOT (!) 运算符,则表示已反转条件。
if (strpos($a, 'are') === false) {
// The word was NOT found
}
=== 非常重要,因为如果单词 “are” 位于字符串的最开头,则 strpos 将返回 0,并且由于 0 松散地等于 FALSE,因此尝试找出错误所在会感到沮丧。=== 运算符使它能够非常逐字逐句地检查结果是否为布尔值 false 而不是 0。
例如,
if (!strpos($a, 'are')) {
// String Not Found
}
如果$a =“你今晚过来了吗?”,这段代码会说找不到字符串“are”,因为“are”的位置是0,字符串的开头。这就是为什么使用 === 错误检查如此重要的原因。
使用 strstr():
if (!strstr($var, 'something')) {
// $var does not contain 'something'
}
或 strpos():
if (strpos($var, 'something') === false) {
// $var does not contain 'something'
}
或者 stripos() 如果你想要不区分大小写的搜索。
strpos() 速度更快一些