为什么使用if
语句来确定某个函数是应该返回true还是false?真的有效,但虚假没有。
这是我的代码:
function test($var){
if($var == "string"){
return true;
}else{
return false;
}
}
操作:
echo test("string");
会按原样返回true
,但使用echo test("hello");
应返回false
,但不返回任何内容,为什么?
应该使用什么来代替使用条件返回true / false?
答案 0 :(得分:5)
使用:
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") { ...
阅读文档;)