为什么我不能使用“if”语句在PHP函数中返回true / false?

时间:2013-04-11 21:10:44

标签: php

为什么使用if语句来确定某个函数是应该返回true还是false?真的有效,但虚假没有。

这是我的代码:

function test($var){
    if($var == "string"){
        return true;
    }else{
        return false;
    }
}

操作: echo test("string");会按原样返回true,但使用echo test("hello");应返回false,但不返回任何内容,为什么?

应该使用什么来代替使用条件返回true / false?

4 个答案:

答案 0 :(得分:5)

好吧work on my side

使用:

function test($var){
    if($var == "string"){
        return true;
    }else{
        return false;
    }
}

echo "string:";
var_dump(test("string"));
echo "hello:";
var_dump(test("hello"));

导致输出

  

的字符串:布尔(真)
  你好:布尔(假)

如果你想看到某些内容的输出总是使用var_dump(),因为false会在直接回显时产生无输出。

答案 1 :(得分:2)

var_dump(test("hello"));

以虚假的方式回应虚假产生没有输出。请尝试var_dump;它会告诉你真正的价值。

bool(false)

答案 2 :(得分:2)

我认为你的代码没有理由不起作用,但这会更短:

function test($var) {
    return ($var == "string");
}

答案 3 :(得分:0)

您的代码很危险 - 这可能意味着错误。

使用===代替==

if ($var === "string") { ...

阅读文档;)