2013-04-27 52 views
-2

我的简单大脑似乎无法把它放在一起。简单的条件算法

我想要做一些代码进行检查,说:

if (($limit == 0) || ($count < $limit)) 
//do stuff 
else 
//exit 

限制的值或者是0,1或4,其中0表示“无限”(不要问)。

所以我真的想说的是

if limit == 0 or count < limit (except when limit ==0)

什么是结构的最佳方式?

+1

什么不工作?你可以说得更详细点吗?您是否收到错误消息,或者代码是否表现得不像预期的那样? – 2013-04-27 19:45:55

回答

3

这将是有益的,如果你var_dump$limit$count,以确保它们的类型是正确的。 您的代码是正确的,当$limit为0时,它应该评估为TRUE并且代码应该运行。

<?php 
$limit = 0; 
if ($limit == 0 || non_exisint_func()) { 
    echo 'yeah'; 
} 

http://3v4l.org/SH9mE - 您会看到第二个条件甚至没有被评估。

如果您将NULL,(bool) FALSE(string) 0设置为0,您的条件将始终通过。

2

在Php中的条件语句中使用括号通常是很好的做法。试试这个:

if (($limit == 0) or ($count < limit)) { 
    //do something 
} else { 
    //do something else 
}