在SQL中,我们有NOT LIKE %string%
我需要在PHP中执行此操作。
if ($string NOT LIKE %word%) { do something }
我认为可以使用strpos()
但无法弄明白......
我需要在有效的PHP中完全相同的比较句子。
if ($string NOT LIKE %word%) { do something }
由于
答案 0 :(得分:67)
if (strpos($string, $word) === FALSE) {
... not found ...
}
请注意strpos()
区分大小写,如果您想要不区分大小写的搜索,请改用stripos()
。
还要注意===
,强制进行严格的相等测试。 strpos如果“'针”,则返回有效的0
。 string位于' haystack'的开头。通过强制检查实际的布尔值false(也就是0),可以消除误报。
答案 1 :(得分:19)
使用strpos
。如果找不到该字符串,则返回false
,否则返回false
。请务必使用类型安全的比较(===
),因为0
可能会被返回,这是一个假值:
if (strpos($string, $substring) === false) {
// substring is not found in string
}
if (strpos($string, $substring2) !== false) {
// substring2 is found in string
}
答案 2 :(得分:1)
<?php
// Use this function and Pass Mixed string and what you want to search in mixed string.
// For Example :
$mixedStr = "hello world. This is john duvey";
$searchStr= "john";
if(strpos($mixedStr,$searchStr)) {
echo "Your string here";
}else {
echo "String not here";
}
答案 3 :(得分:1)
use
if(stripos($str,'job')){
// do your work
}
答案 4 :(得分:0)
如果您只想找到类似 “你好吗”中的“是” 而且不喜欢 “是”在“兔子”中
$word=" are ";
$str="How are you?";
if(strpos($word,$str) !== false){
echo 1;
}