或者在PHP中使用if(trim()==""){}

时间:2016-03-17 10:50:14

标签: php

在PHP中if (trim() == "") {}中的OR函数?

试过这个,不行:

if (trim($query) == "a" or "b") {$search= 'd'; }

我想如果存在a或b,则转到$ search

5 个答案:

答案 0 :(得分:1)

PHP Manual开始以正确的方式学习PHP。它应该是:

if (trim($query) == "a" || trim($query) == "b") {
  $search= 'd';
}

或者您可以使用in_array

if (in_array(trim($query), array('a', 'b'))) {
  $search = 'd';
}

如果你想寻找部分的,那么你可以这样做:

if (strpos("a", trim($query)) > -1 || strpos("b", trim($query)) > -1) {

答案 1 :(得分:0)

在条件设置中,您必须使用带有or||运算符的if语句2x,如下所示:

if (trim($query) == "a" or trim($query) == "b") {$search= 'd'; }

您也可以使用:

if (trim($query) == "a" || trim($query) == "b") {$search= 'd'; }

当然,您也可以在声明中使用in_array()函数:

if (in_array(trim($query), array('a', 'b'))) {
  $search = 'd';
}

答案 2 :(得分:0)

if( in_array( trim($query), array('a', 'b') ) ) {
  $search = 'd';
}

答案 3 :(得分:0)

容易羞怯

if (trim($query) == "a" or trim($query) == "b"){
   // Do somenthing
}

答案 4 :(得分:0)

首先,您可能不应该使用or运算符,因为它具有非常奇怪的优先级。请改用||

http://php.net/manual/en/language.operators.logical.php

其次,你需要比较两次修剪的结果。 or是一个简单的逻辑运算符,它计算布尔表达式并返回一个bool,它不会神奇地进行两次比较。

$query = trim(query);
if ($query === 'a' || $query === 'b') { $search = 'd'; }