php:我需要这个OPOPOSITE ...?

时间:2014-07-07 04:26:57

标签: php

以下搜索字符串$ fruit中的任何单词apple,oranges和bananas并相应地采取行动:

if ((stristr($fruit,'apples')) || (stristr($fruit,'oranges')) || (stristr($fruit,'bananas')) !== false) {//some code }

我需要OPPOSITE。如果字符串$ fruit没有这三个中的任何一个,我需要运行代码。我在想像

if not ((stristr($fruit,'apples')) || (stristr($fruit,'oranges')) || (stristr($fruit,'bananas')) !== false) {//some code }

但这似乎不起作用......

请举手一点?感谢...

3 个答案:

答案 0 :(得分:7)

您正在寻找的是DeMorgan's law

  

否定一个连词就是否定的分离。

     

否定分离是否定的结合。

尝试:

if ( stristr($fruit, 'apples') === FALSE && stristr($fruit,'oranges') === FALSE &&  stristr($fruit,'bananas') === FALSE) {
    // some code
}

由于stristr只返回一个字符串或FALSE,因此可以将此代码简化为:

if ( !stristr($fruit, 'apples') && !stristr($fruit,'oranges') &&  !stristr($fruit,'bananas')) {
    // some code
}

答案 1 :(得分:0)

感谢大家的帮助。

我最终做了这个,基于那些回复的所有输入,哪个有效:

if (!((stristr($fruit,'apples')) || (stristr($fruit,'oranges')) || (stristr($fruit,'bananas')) !== false))

再次感谢您的帮助!

答案 2 :(得分:-2)

if (!(stristr($fruit,'apples')) || !(stristr($fruit,'oranges')) || !(stristr($fruit,'bananas')) !== false) {//some code }