【问题标题】:Ordering default case in PHP switch statements [duplicate]在 PHP switch 语句中排序默认情况[重复]
【发布时间】:2012-02-08 20:34:21
【问题描述】:

可能重复:
default as first option in switch statement?

在我看过的所有教程中,default: 是 switch/case 语句中的最后一个选项。

但是,我有一种情况,default: 行为是迄今为止最常见的。为了便于阅读,我想先描述default: 的行为,然后是下面的边缘情况。

这会起作用吗,还是我会让default: 语句始终是被评估的那个(在某些或所有系统上)?

【问题讨论】:

  • 在一个小脚本中测试它比发布问题花费的时间更少!
  • @jcmeloni:我的意思是在我的特殊用途中。通常,当我使用“switch”时,情况正好相反:“default”是最不常见的。
  • @amindfv 很公平;只是想为将来遇到此问题的任何人获取记录信息。
  • @jcmeloni:为清晰起见进行了编辑。
  • @John3136:这是一个公平的观点,但它只会展示我的 php 安装会发生什么,我想知道它一般是如何工作的。

标签: php switch-statement


【解决方案1】:

它会起作用的。您只想确保在默认情况下使用断线结束该块。这是一个例子:

<?php
$action = $_GET['action'];

switch ($action)
{
  default:
  {
    echo "default case";
    break;
  }

  case "hello":
  {
    echo "hello world";
    break;
  }
}
?>

【讨论】:

  • 案例陈述上的大括号?!奇怪...
  • @FMaz008 大括号不是必需的,但我已经养成使用它们的习惯,因为它们对代码折叠编辑器很友好。
  • @DuaneGran w00t。我同意大括号^_^
  • 我们是否同意这是正确的,而@thisisablock 的答案不是?
  • @amindfv 好吧,我当然是。 :) php.net 文档还显示了顺序无关紧要的情况,所以我认为我们可以搁置这一点。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-11-21
  • 1970-01-01
  • 1970-01-01
  • 2014-08-14
  • 2020-06-17
相关资源
最近更新 更多