## Why is this an issue?

`switch` can contain a `default` clause for various reasons: to handle unexpected values, to show that all the cases were properly considered, etc.

For readability purposes, to help a developer quickly spot the default behavior of a `switch` statement, it is recommended to put the `default` clause at the beginning or the end of the `switch` statement.

This rule raises an issue if the `default` clause is not the first or the last one of the `switch`'s cases.

    switch ($param) {
      case 0:
        doSomething();
        break;
      default: // Noncompliant: default clause should be the first or last one
        error();
        break;
      case 1:
        doSomethingElse();
        break;
    }