使用没有花括号的switch语句是对还是错?

Zah*_*wan 1 php syntax performance switch-statement conditional-statements

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;
    }
Run Code Online (Sandbox Code Playgroud)

*您对上述代码的看法是正确的还是每个案例都应该用大括号写成?我们可以在没有花括号的情况下编写案例(不超过两行)吗?如果可以,使用或不使用花括号之间是否存在性能差异?感谢帮助.*

tay*_*ssy 7

我将在这个问题上添加我自己的答案,因为接受的答案是不正确的.

"多行"案例子句可以用大括号写.是否应该完全取决于编写代码的开发人员和/或他们订阅的编码标准.

我个人在我使用的每种编程语言的case语句中使用花括号,从C开始,因为我相信它创建了更易读的代码.

不,这不是语法错误.

在表现方面.好吧,PHP被解释,所以从技术上讲它必须解释花括号.但是,您不应该牺牲可读性来获得如此微不足道的性能提升.特别是在像PHP这样的语言中,性能影响远远超出了解释器.