PHP if / else返回和echo之间的差异?

时间:2016-06-12 23:05:10

标签: php

我不明白这个?怪?完全是php ...因为我正在查看其他人的代码,我看到有些人完全忽略了else语句而只是放置了“return false”。言。

似乎这个技巧仅适用于return语句,正如您在下面的情况中所看到的,它在回显文本时不起作用。

这很奇怪,比如两个例子,肯定这个函数是readuraly读的,所以函数会在if语句中返回“true”因为条件满足但是当它离开if / else语句时应返回FALSE,因为没有ELSE语句。这不会发生,函数仍然返回true。

我无法理解这一点,所以希望有人可以解释一下?

// Case 1
function checkNumber1($number) {
    if ($number === 10) {
        return true;
    } else {
        return false;
    }
}

$number = 10;
var_dump(checkNumber1($number)); // Returns true






// Case 2
function checkNumber2($number) {

    if ($number === 10) {
        return true;
    }
    return false;
}

$number = 10;
echo '<br>';
var_dump(checkNumber2($number)); // Also returns true??






// Case 3
function checkNumber3($number) {
    if ($number === 10) {
        echo 'true' . '<br>';
    } else {
        echo 'false' . '<br>';
    }
}

$number = 10;
echo '<br>';
checkNumber3($number); // Returns true






// Case 4
function checkNumber4($number) {

    if ($number === 10) {
        echo 'true' . '<br>';
    }
    echo 'false' . '<br>';
}

$number = 10;
checkNumber4($number); // Returns true and then false???

1 个答案:

答案 0 :(得分:9)