用PHP编写Switch的更好方法?

iam*_*box 0 php switch-statement

我使用下面的这个例子来询问如何将数组传递给Switch,而不是像这样将它们列出来?

也许如果我从一个数据库中获取一个数组作为页面的所有"页面".

我认为这种方法不是最优雅的方法.

switch($_GET['page'])
{
case 'home':
    include('home.php');
    break;
case 'oem-customers':
    include('oem-customers.php');
    break;
case 'job-shop': 
    include('job-shop.php');        
    break;
case 'anodized-magnet-coils':
    include('anodized-magnet-coils.php');
    break;
case 'design':
    include('design.php');
    break;
case 'services':
    include('services.php');
    break;
case 'black-foil':
    include('black-foil.php');
    break;  
case 'contact':
    include('contact.php');
    break;
case 'order';
    include('order.php');
    break;
default: 
    include('home.php');
}
Run Code Online (Sandbox Code Playgroud)

Mus*_*usa 5

怎么样

switch($_GET['page'])
{
case 'home':
case 'oem-customers':
case 'job-shop': 
case 'anodized-magnet-coils':
case 'design':
case 'services':
case 'black-foil':
case 'contact':
case 'order';
    include("$_GET[page].php");
    break;
default: 
    include('home.php');
}
Run Code Online (Sandbox Code Playgroud)

  • `include("{$ _ GET ['page']}.php");`会更清洁.我相信你现在的版本引起了注意. (2认同)