可以php返回一个布尔值? => return $ aantal == 0;

时间:2009-11-08 21:41:29

标签: php syntax variables boolean return

可以php返回一个像这样的布尔值:

return $aantal == 0;
像在java中一样,你可以

public boolean test(int i)
{
return i==0;
}

或者你必须使用if contruction吗? 因为如果我这样做。

$foutLoos = checkFoutloos($aantal);

function checkFoutloos($aantal)
{
    return $aantal == 0;
}

echo "foutLoos = $foutLoos"; 

它回声

foutLoos = 

所以不是真或假

感谢 matthy

6 个答案:

答案 0 :(得分:8)

尝试一下!

function is_zero($n) {
    return $n == 0;
}

echo gettype(is_zero(0));

输出:

boolean

答案 1 :(得分:8)

它返回一个布尔值,但输出时布尔值不会转换为字符串。试试这个:

$foutLoos = checkFoutloos($aantal);

function checkFoutloos($aantal)
{
    return $aantal == 0;
}

echo "foutLoos = " . ( $foutLoos ? "true" : "false" );

答案 2 :(得分:1)

是的,你可以在return函数中返回一个布尔测试。我喜欢把它放在括号中,所以我知道正在评估什么。

function Foo($Bar= 0) {
    return ($Bar == 0);
}

$Return = Foo(2);
$Type = var_export($Return, true);

echo "Return Type: ".$Type; // Return Type: boolean(true)

事实上,几乎任何事情都可以在return行进行评估。不要发疯,因为它可能会使重构变得更加困难(例如,如果你想允许插件操纵返回)。

答案 3 :(得分:1)

是的,我发现当你回应一个错误时,你什么也得不到,而真正的回声是1,这就是为什么我感到困惑;)

答案 4 :(得分:1)

是。你甚至可以通过三元运算符。

function foo($bar == 0) {
    return ($bar) ? true : false;
}

答案 5 :(得分:1)

你可以这样做,我认为,使用类型转换:

return (bool) $aantal;