【问题标题】:Syntax to check isset using comparison operators使用比较运算符检查 isset 的语法
【发布时间】:2011-11-05 05:53:33
【问题描述】:

就像我们在其他语言中检查一行中的条件一样。用PHP可以做到吗?

在java中

boolean val = (a == b) ? true : false;

在 PHP 中也可以。

如果是,可以对isset 关键字执行此操作吗?

【问题讨论】:

  • 顺便说一句 val = (a == b) ? true : false 可以简化为 val = (a == b) :)
  • 请注意,在您的示例中,?: 运算符不是必需的,因为a == b 的结果将已经是布尔值。这与说int x = y + 0; 大致相同——+ 0 子句不会改变表达式的结果,就像? true : false 不会改变a == b 表达式的结果一样。这实际上是一个空操作。
  • 好吧,我试图以三元运算符为例。无论如何感谢您的建议@amaud。
  • 感谢@cdhowie 的建议

标签: php comparison operators


【解决方案1】:

是的,当然。 PHP 也支持?: 三元运算符。例如:

$foo = isset($_POST['foo']) ? $_POST['foo'] : '';

【讨论】:

    【解决方案2】:

    是的,可以在 PHP 中使用三元运算符。用isset(expression)(返回布尔值)替换(a == b) 应该可以解决问题。只要确保= 运算符不优先。可能没有必要,但我会将三元语句括在弧形括号之间。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-07-19
      • 2021-11-21
      • 2023-03-26
      • 1970-01-01
      • 2018-11-10
      • 2014-06-14
      • 2014-09-08
      • 1970-01-01
      相关资源
      最近更新 更多