PHP,动态分页不工作

PHP,动态分页不工作,php,Php,我使用这个代码,但它不能正常工作。它只输出about.php页面。为什么会这样 $halaman= isset($_GET['menu'] ); switch ($halaman) : default: include "home.php"; break; case 'about': include "about.php"; break; case 'galery': include

我使用这个代码,但它不能正常工作。它只输出
about.php
页面。为什么会这样

$halaman= isset($_GET['menu'] );
 switch ($halaman) :


    default:
        include "home.php";
        break;

    case 'about':
        include "about.php";
        break;
    case 'galery':
        include "galery.php";
        break; 
    endswitch;

isset()
返回一个布尔值。因此,您在
switch
语句中测试的变量正好是true或false。

这应该有效,因为isset()返回的是布尔值,而不是字符串

    if(isset($_GET['menu'] )){
     switch ($_GET['menu']) :


        default:
            include "home.php";
            break;

        case 'about':
            include "about.php";
            break;
        case 'galery':
            include "galery.php";
            break; 
        endswitch;
}
isset()
返回一个布尔值,以便实际检查并将
GET
值指定给变量,如下所示:-

$halaman= (isset($_GET['menu'] )) ? $_GET['menu'] : ""; // instead of "" you can add any other default value.  
 switch ($halaman) :

    default:
        include "home.php";
        break;

    case 'about':
        include "about.php";
        break;

    case 'galery':
        include "galery.php";
        break; 
    endswitch;
演示示例:-

注意:-

您可以应用
!empty()
而不是
isset()
(它将检查变量是否已设置并具有一些值),然后您可以执行以下操作:-

$halaman= (isset($_GET['menu'] )) ? $_GET['menu'] : ""; // instead of "" you can add any other default value.  
 switch ($halaman) :

    default:
        include "home.php";
        break;

    case 'about':
        include "about.php";
        break;

    case 'galery':
        include "galery.php";
        break; 
    endswitch;

输出:-

您必须定义“不工作”。这里也没有足够的代码。您还没有检查错误吗?您需要根据
true
false
进行切换,因为
isset
returnsSet返回一个布尔值,因此当您可能希望在$\u GET['menu'中存储值时,$halmana被设置为true/false看在上帝的份上,我没有发现任何错误,但是,我的页面应该跳转到galery.php,但它没有跳转,只需停留在about.php中。
island()
返回一个小岛。做或不做,没有“尝试”。一个好的答案总是会有一个解释,说明做了什么以及为什么这样做,不仅是为了OP,而且是为了未来的访客。谢谢我会编辑