php不返回值false
我不能在这里得到返回的假值。如果为真值,则返回罚款。我错过了什么php不返回值false,php,return-value,Php,Return Value,我不能在这里得到返回的假值。如果为真值,则返回罚款。我错过了什么 if ((count($this->_brokenRulesCollection)) == 0) { return true; } else { return false; } 如果数组$this->\u brokenrulescolection不为空,则代码可以返回false 如果$this->\u brokenrulescolection不是一个数组或具有实现的可计数接口的对象,那么count($th
if ((count($this->_brokenRulesCollection)) == 0) {
return true;
} else {
return false;
}
如果数组
$this->\u brokenrulescolection
不为空,则代码可以返回false
如果
$this->\u brokenrulescolection
不是一个数组或具有实现的可计数接口的对象,那么count($this->\u brokenrulescolection)
将返回1。在PHP中,false
转换为字符串时为空字符串,而true
转换为字符串时为“1”
使用
var\u dump
而不是echo
进行调试。在条件表达式中(除非使用类型匹配运算符===或!==)任何非零整数都等价于true,任何非零长度字符串都等价于true,反之,零或空字符串都是false
所以
可以写为:
return count($this->_brokenRulesCollection);
C.如果您确实想看到“false”,请在返回之前将值放入变量中。因此:
if ((count($this->_brokenRulesCollection)) == 0) {
$value=true;
} else {
$value=false;
}
return $value;
不清楚的问题,没有足够的代码。我想如果问您count($this->\u brokenrulescolection)是否实际为非零,会有点侮辱性。我宁愿看到
返回($this->\u brokenrulescolection==0)代码>,但变量是否曾经非零?$this->\u BrokerRulesCollection是一个对象数组。我可以强制它为1或0。当我强制它为1时,我没有得到返回值。也许最好问一下,当它的计算结果为false时,我希望返回什么。如果我在函数返回真值时回显调用对象上的返回值,则得到1。否则,当我回显返回值时,我得到nada。我希望它为0表示false。那么,测试是否为空会更好?基本上,我只需要知道数组中是否有任何内容,如果有,它应该返回false.Yes。使用empty($this->\u brokenrulescolection)
将返回false
,如果$this->\u brokenrulescolection
不为空empty
不能像在empty(trim($name))
中那样使用,这将返回一个错误。另外,在PHP中,if((count($array))==0)
可以写成if(!count($array))
,您报告的代码可以写成return!计数($this->\u brokenrules集合)
。对于布尔运算符(!
,和&
,|
),任何不是空字符串的值,没有项目的数组,等于零的整数,空
,字符串'0'
被认为等同于真
(后续),例如表达式1&“非空字符串”
返回TRUE
。非常感谢,尼古拉斯+1用于提醒使用var_dump。这是错误的;在返回变量之前,不需要将返回值存储在变量中。
if ((count($this->_brokenRulesCollection)) == 0) {
$value=true;
} else {
$value=false;
}
return $value;