2
switch($_SERVER["SCRIPT_NAME"]){
    case "/index.php":
            $this->pageId = 1;
        break;
    case "/shops/index.php":
            $this->pageId = 2;
        break;
    case "/shops/dailydeals.php":
            $this->pageId = 4;
        break;
    case "/shops/shops.php":
            $this->pageId = 5;
        break;
    case "/shops/deals.php":
            $this->pageId = 9;
        break;
    case "/shops/store.php":
            $this->pageId = 10;
        break;
    case "/user/cashmail.php":
            $this->pageId = 13;
        break;
    case "/user/cashmail.php":
            $this->pageId = 13;
        break;
    default ;
            $this->pageId = 1;
        break;
    }

上記のコードについてどう思いますか? case腕に中括弧を使用するかどうかを決定しようとしています。この例の各ケースには 1 行のコードしかないため、中かっこは使用していません。中括弧を使用する場合と使用しない場合でパフォーマンスに違いはありますか?

4

3 に答える 3

8

受け入れられた回答が正しくないため、この質問に独自の回答を追加します。

「複数行」の case 句は中括弧で記述できます。必要かどうかは、コードを書いている開発者、および/または彼らが加入しているコーディング標準に完全に委ねられています。

私は個人的に、C をはじめ、使用するすべてのプログラミング言語の case ステートメントで中括弧を使用しています。

いいえ、構文エラーではありません。

パフォーマンスに関して。PHP は解釈されるので、技術的には中括弧を解釈する必要があります。ただし、そのようなわずかなパフォーマンスの向上のために読みやすさを犠牲にするべきではありません。特に、パフォーマンスへの影響がインタプリタをはるかに超えている PHP のような言語では。

于 2014-10-17T08:53:08.083 に答える