>>736
ソースのあちらこちらで変更していないであれば、いいんでないかい。
漏れも含めて多分、グローバル変数である$_GETを「あちらこちら」で
書き換えられるとトラブル時に追いかけづらいから嫌悪感があるんだろうと思う。
個人的には$_GET等のスーパーグローバル変数は参照専用のほうが心理的にはありがたいんだけどね。

ちなみにその例であれば
 switch (isset($_GET['mode']) ? $_GET['mode'] : 'main') {
  case 'main':
   //main または省略時の処理
 }
でいいのではないかと。