Php 在开关循环中切换。。。我的代码有什么问题?

Php 在开关循环中切换。。。我的代码有什么问题?,php,Php,好了,伙计们,我试着在一个案例中切换,但它不起作用,它总是会回到默认值。我错过了什么? 当我尝试/index.php?siteSettings时,它会显示默认值,当我尝试index.php?siteSettings&mode=adminSettings时也是如此 switch($_SERVER['QUERY_STRING']){ case 'logout': include("logout.php"); break; case 'siteSet

好了,伙计们,我试着在一个案例中切换,但它不起作用,它总是会回到默认值。我错过了什么? 当我尝试/index.php?siteSettings时,它会显示默认值,当我尝试index.php?siteSettings&mode=adminSettings时也是如此

switch($_SERVER['QUERY_STRING']){

    case 'logout':
        include("logout.php");
        break;

    case 'siteSettings':

        switch($_GET['mode']){

            case 'generalSettings':
                $mainPageTitle = "General settings";
                $caseFile = "".$admin_templates_path."/generalSettings.php";
                break;

            case 'adminSettings':
                $mainPageTitle = "Admin settings";
                $caseFile = "".$admin_templates_path."/adminSettings.php";
                break;

            case 'userSettings':
                $mainPageTitle = "User settings";
                $caseFile = "".$admin_templates_path."/userSettings.php";
                break;

            case 'advertising':
                $mainPageTitle = "Advertising";
                $caseFile = "".$admin_templates_path."/advertising.php";
                break;

            default:
                $mainPageTitle = "General settings";
                $caseFile = "".$admin_templates_path."/generalSettings.php";
                break;


        }
        break;
    default:
        $mainPageTitle = "General settings";
        $caseFile = "".$admin_templates_path."/generalSettings.php";
        break;

}

在@aynber让我意识到我的错误后,这就是我所做的,现在它确实起作用了

也许有人会需要它

伙计们

$switchPage = explode("~",str_replace(["?","&","="], "~",$_SERVER['QUERY_STRING']));

switch($switchPage[0]){
.....

您将需要拆分查询字符串,或者以不同的方式传递站点页面
$\u服务器['QUERY\u STRING']
将等于
siteSettings&mode=adminSettings
,因此将返回默认值。为什么要在交换机内安装一个交换机?它可以工作,我不知道我在想什么。非常感谢你。现在我分解了查询字符串,可以访问我需要的部分。因为我创建了自己的模板,所以在所选页面上需要其他子菜单。我想不出更好的方法来实现这一点,只有在else$\u获得时才切换,但我不想。看看MVC模式。您应该为每个设置屏幕等设置单独的脚本。