测试一个字符串是否包含PHP中的单词?

Luc*_*tos 26 php string-comparison

在SQL中我们有 NOT LIKE %string%

我需要在PHP中执行此操作.

if ($string NOT LIKE %word%) { do something }

我认为可以做到 strpos()

但无法弄清楚如何......

我需要在有效的PHP中完全相同的comparission句子.

if ($string NOT LIKE %word%) { do something }

谢谢

Mar*_*c B 69

if (strpos($string, $word) === FALSE) {
   ... not found ...
}
Run Code Online (Sandbox Code Playgroud)

请注意,strpos()区分大小写,如果您想要不区分大小写的搜索,请stripos()改用.

还要注意===,强制进行严格的平等测试.strpos 0如果'needle'字符串位于'haystack'的开头,则返回有效.通过强制检查实际的布尔值false(也就是0),可以消除误报.

  • @LUcas:应该在问题中说出来.简单的例子得到简单的答案 (2认同)

Tim*_*lla 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
}
Run Code Online (Sandbox Code Playgroud)