PHP PHP Arrays and Control Structures PHP Conditionals Switch Statements

Jacob Wick
Jacob Wick
8,912 Points

What am I missing here? I don't see how there is no case for 'admin' being seen.

Any help would be much appreciated!

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

//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.";

}

1 Answer

Jennifer Nordell
STAFF
Jennifer Nordell
Treehouse Staff

Hi there, Jacob Wick ! I looked at your code and looked at your code and it seemed solid to me. I tried it and it also fails for me. So through process of elimination, I determined what the challenge was having a problem with. It turns out that this challenge really does not like the space between the case and the following colon. To be clear, this shouldn't affect anything in PHP code outside this challenge.

So where you wrote:

case 'admin' :

I wrote:

case 'admin':  // note the removal of the space before the colon

... and it passes the first step! :smiley:

That being said, I feel like this should not break the challenge so I'm going to go ahead and tag Alena Holligan on this one.

Hope this helps! :sparkles:

Jacob Wick
Jacob Wick
8,912 Points

Thanks so much! I finally ended up removing the space before the colon on a hunch and was able to move on.