我似乎想要返回时在PHP中使用内联if语句是有限制的。
function example($Variable)
{
( (int) (++$Variable) == 1 ) ? return true : return false;
}
$test = example(1);
预期:false
这给出了一个奇怪的错误,因为我以前从未见过这个错误。
错误类型:4
消息:语法错误,意外'返回'(T_RETURN)
有人可以解释为什么你不能在这样的if语句中使用return吗?
答案 0 :(得分:8)
三元组已经返回结果。你不能返回一个返回函数。
您可以在变量结果之前返回,如下所示:
function example($Variable)
{
return ( (int) (++$Variable) == 1 ) ? true : false;
}
$test = example(1);