在三元运算符中使用 return
我尝试在三元运算符中使用 return,但收到错误:
Parse error: syntax error, unexpected T_RETURN
这是代码:
$e = $this->return_errors();
(!$e) ? '' : return array('false', $e);
这可能吗?
谢谢!
I'm trying to use return in a ternary operator, but receive an error:
Parse error: syntax error, unexpected T_RETURN
Here's the code:
$e = $this->return_errors();
(!$e) ? '' : return array('false', $e);
Is this possible?
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(7)
这是正确的语法:
This is the correct syntax:
关闭。
您想要
返回条件?a:b
Close.
You'd want
return condition?a:b
它在大多数语言中不起作用,因为
return
是一个语句(如if
、while
等),而不是可以执行以下操作的运算符:嵌套在表达式中。遵循相同的逻辑,您不会尝试在表达式中嵌套if
语句:它也不适用于
break
和continue
。It doesn't work in most languages because
return
is a statement (likeif
,while
, etc.), rather than an operator that can be nested in an expression. Following the same logic you wouldn't try to nest anif
statement within an expression:It wouldn't work for
break
andcontinue
as well.不,这是不可能的,而且与以下相比也相当令人困惑:
No it's not possible, and it's also pretty confusing as compared to:
不可以。但是您可以为
return
语句使用三元表达式。注意:这可能不是所需的逻辑。我将其作为示例提供。
No. But you can have a ternary expression for the
return
statement.Note: This may not be the desired logic. I'm providing it as an example.
不,那不可能。但是,以下情况是可能的:
希望有所帮助。
No, that's not possible. The following, however, is possible:
Hope that helps.
扑通扑通,
如果你想用三元修改你的回报?
这是完全可能的。
在这个例子中,我有一个参数包含数组的函数。
此示例函数用于解析用户数组。
返回时,我有一个包含用户 ID 和用户名的数组。
但如果我没有任何用户会怎样?
抱歉我的英语不好,我是法国用户哈哈。
ND。
Plop,
if you want modify your return with ternary ?
it's totally possible.
In this exemple, i have a function with array in parameters.
This exemple function is used to parse users array.
On return i have an array with user id and user username.
But what happens if I do not have any users?
Sorry for my bad english, i'm french user haha.
N-D.