有人可以提供一些避免长运算符的提示,例如下面的语句吗...可以将NULL,''和-1组合在一起
True
答案 0 :(得分:3)
In_array是更好的选择。
if(in_array($row['ios'], [null, "", -1]) && in_array($row['android'], [null, "", -1])){
$desktop_count++;
}
$invalidValues = [null, "", -1];
if(in_array($row['ios'], $invalidValues) && in_array($row['android'], $invalidValues)){
$desktop_count++;
}
答案 1 :(得分:2)
您可以利用PHP's type casting将变量转换为整数:
if( (int)$row['ios'] <= 0 && (int)$row['android'] <= 0 )
{
$desktop_count++;
}
没有混乱,没有大惊小怪。
您可以放弃显式的(int)
强制转换,但是在以后阅读此代码时,使用显式强制转换有助于避免歧义。
作为参考,以下是您正在使用的值的var_dump()
:
var_dump( (int)'' );
var_dump( (int)'-1' );
var_dump( (int)null );
int(0)
int(-1)
int(0)