PHP switch case语句.如何管理默认值


PHP switch case statement. How to manage default values

这是我的切换用例脚本:

switch ($_GET['page'])
{
case '?users':
.....
default: echo 'Welcome';
   }

这个脚本运行良好,但当我第一次加载页面时,他返回错误:

Notice: Undefined index: page in

我知道为什么,因为脚本不知道什么是默认值。如何设置默认值并避免错误?

1a)检查索引page是否存在

if( array_key_exists('page', $_GET) ) {
}

1b)设置默认值

$_GET['page'] = array_key_exists('page', $_GET) ? $_GET['page'] : '';

2)您的案例陈述不正确

case 'users' :
 //...
break;

3)所有代码一起

$_GET['page'] = array_key_exists('page', $_GET) ? $_GET['page'] : '';
  switch ($_GET['page']) {
      case 'users':
              //...
      break;
      default: 
              echo 'Welcome';
      break;
   }

小贴士

  • 确保您break;案例块
  • 在盲目使用索引之前,请始终检查索引是否存在

使用isset():已编辑

if(isset($_GET['page'])){
    switch ($_GET['page'])
    {
    case 'users':
    .....
    default: echo 'Welcome';
       }
}