对“意外 T_ECHO”进行故障排除在三元运算符语句中

发布于 2024-08-30 04:29:05 字数 236 浏览 8 评论 0原文

($DAO->get_num_rows() == 1) ? echo("is") : echo("are");

这似乎没有按预期为我工作,我收到错误“意外的 T_ECHO”。我希望它能回应“是”或“是”。

我已经尝试过,条件周围没有括号。我是否无法以这种方式使用三元运算符?

$DAO->get_num_rows() 返回一个整数值。

($DAO->get_num_rows() == 1) ? echo("is") : echo("are");

This dose not seem to be working for me as intended, I get an error "Unexpected T_ECHO". I am expecting it to echo either 'is' or 'are'.

I have tried it without the brackets around the conditional. Am I just not able to use a ternary operator in this way?

The $DAO->get_num_rows() returns an integer value.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

萌化 2024-09-06 04:29:05

三元运算符与 if-then 不同。你应该写它

echo ($DAO->get_num_rows() == 1) ? "is" : "are";

返回值在第二或第三位置。它不会执行第二或第三位置的语句

The Ternary operator is not identical to an if-then. You should have written it

echo ($DAO->get_num_rows() == 1) ? "is" : "are";

It returns the value in the 2nd or 3rd position. It does NOT execute the statement in the 2nd or 3rd position.

望笑 2024-09-06 04:29:05

三元运算符应该产生一个值——而不是回显它。

在这里,您可能想要这个:

echo ($DAO->get_num_rows() == 1) ? "is" : "are";

如果您想使用两个 echo,则必须使用 if/else 块:

if ($DAO->get_num_rows() == 1) {
    echo "is";
} else {
    echo "are"
}

它的作用与使用三元运算符的代码的第一部分——只是它有点长。

The ternary operator should result in a value -- and not echo it.

Here, you probably want this :

echo ($DAO->get_num_rows() == 1) ? "is" : "are";

If you want to use two echo, you'll have to work with an if/else block :

if ($DAO->get_num_rows() == 1) {
    echo "is";
} else {
    echo "are"
}

Which will do the same thing as the first portion of code using the ternary operator -- except it's a bit longer.

长伴 2024-09-06 04:29:05

在评估条件后,三元运算符返回两个值之一。它不应该按照您正在使用的方式使用。

这应该有效:

echo ($DAO->get_num_rows() == 1 ? "is" : "are");

The ternary operator returns one of two values after evaluating the conditions. It is not supposed to be used the way you are using it.

This should work:

echo ($DAO->get_num_rows() == 1 ? "is" : "are");
千仐 2024-09-06 04:29:05

你可以使用

echo ($DAO->get_num_rows() == 1) 吗? “是”:“是”;

U can use

echo ($DAO->get_num_rows() == 1) ? "is" : "are";

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文