PHP PHP Arrays and Control Structures PHP Conditionals Switch Statements

Mario Zulim
Mario Zulim
847 Points

I dont know what it means. Please help

Why is not working?

switch.php
<?php
//Available roles: admin, editor, author, subscriber
if (!isset($role)) {
    $role = 'admin';
}

//change to switch statement
switch ($role){
  case 'subscriber':
    echo "You do not have access to this page. Please contact your administrator";
    break; 
  default:
    echo "You do not have access to this page. Please contact your administrator";
    break;
  case 'admin':
echo 'As an admin, you can add, edit, or delete any post.';
  break;
    }

1 Answer

Tim Knight
Tim Knight
28,855 Points

Hi Mario,

What you've done is actually really good, but you can simplify your switch statement a bit to help get it to meet the requirements of the assignment.

<?php
//Available roles: admin, editor, author, subscriber
if (!isset($role)) {
    $role = 'admin';
}

//change to switch statement
switch ($role) {
  case 'admin':
    echo 'As an admin, you can add, edit, or delete any post.';
    break;
  default:
    echo "You do not have access to this page. Please contact your administrator.";
    break;
}

Make sure your default statement ends with a period, it seems the assignment checks that that string is exact. Then just add the one admin case above the default statement.