Bird
Raised Fist0
PHPprogramming~15 mins

Switch statement execution in PHP - Mini Project: Build & Apply

Choose your learning style10 modes available
Switch statement execution
📖 Scenario: You are creating a simple program to display the day of the week based on a number input. This is like a small calendar helper that tells you the name of the day when you enter a number from 1 to 7.
🎯 Goal: Build a PHP program that uses a switch statement to print the correct day name for a given number.
📋 What You'll Learn
Create a variable called dayNumber with a value from 1 to 7
Create a variable called defaultDay with the value 'Invalid day'
Use a switch statement on dayNumber with cases for numbers 1 to 7
Print the day name corresponding to the number (1 = Monday, 2 = Tuesday, ..., 7 = Sunday)
Print defaultDay if the number is not between 1 and 7
💡 Why This Matters
🌍 Real World
Switch statements are useful when you want to choose between many options based on a single value, like menu choices or day names.
💼 Career
Understanding switch statements helps in writing clear and efficient code for decision-making in many programming jobs.
Progress0 / 4 steps
1
Create the day number variable
Create a variable called dayNumber and set it to 3.
PHP
Hint

Use $dayNumber = 3; to create the variable.

2
Create the default day variable
Create a variable called defaultDay and set it to the string 'Invalid day'.
PHP
Hint

Use $defaultDay = 'Invalid day'; to create the variable.

3
Write the switch statement
Write a switch statement using $dayNumber to set a variable $dayName to the correct day name for numbers 1 to 7: 1 = Monday, 2 = Tuesday, 3 = Wednesday, 4 = Thursday, 5 = Friday, 6 = Saturday, 7 = Sunday. Use $defaultDay for any other number.
PHP
Hint

Use switch ($dayNumber) { case 1: ... break; ... default: ... } to assign $dayName.

4
Print the day name
Print the value of the variable $dayName.
PHP
Hint

Use print($dayName); to show the day.

Practice

(1/5)
1. What does a switch statement do in PHP?
easy
A. It chooses which code to run based on a value.
B. It repeats code multiple times.
C. It defines a function.
D. It creates a new variable.

Solution

  1. Step 1: Understand the purpose of switch

    A switch statement compares a value to multiple cases to decide which code block to run.
  2. Step 2: Compare with other options

    Repeating code is done by loops, functions define reusable code, and variables store data, so these are not correct.
  3. Final Answer:

    It chooses which code to run based on a value. -> Option A
  4. Quick Check:

    Switch selects code by value = A [OK]
Hint: Switch picks code by matching value quickly [OK]
Common Mistakes:
  • Confusing switch with loops
  • Thinking switch defines functions
  • Believing switch creates variables
2. Which of the following is the correct syntax to start a switch statement in PHP?
easy
A. switch [variable] {
B. switch variable {
C. switch (variable) {
D. switch variable() {

Solution

  1. Step 1: Recall switch syntax

    In PHP, switch requires parentheses around the variable: switch (variable) {
  2. Step 2: Check other options

    Options without parentheses or with brackets or parentheses after variable name are invalid syntax.
  3. Final Answer:

    switch (variable) { -> Option C
  4. Quick Check:

    Switch uses parentheses around variable [OK]
Hint: Switch always uses parentheses around the variable [OK]
Common Mistakes:
  • Omitting parentheses
  • Using square brackets instead of parentheses
  • Adding parentheses after variable name
3. What will be the output of this PHP code?
 $color = 'red';
 switch ($color) {
   case 'blue':
     echo 'Blue color';
     break;
   case 'red':
     echo 'Red color';
     break;
   default:
     echo 'No color';
 }
medium
A. Blue color
B. Syntax error
C. No color
D. Red color

Solution

  1. Step 1: Check the value of $color

    $color is set to 'red'.
  2. Step 2: Match cases in switch

    The switch checks 'blue' first (no match), then 'red' (match), so it runs echo 'Red color' and breaks.
  3. Final Answer:

    Red color -> Option D
  4. Quick Check:

    Value 'red' matches case 'red' [OK]
Hint: Match value to case, break stops further checks [OK]
Common Mistakes:
  • Forgetting break causes fall-through
  • Assuming default runs even if case matches
  • Mixing case values
4. Identify the error in this PHP switch code:
 $day = 3;
 switch ($day) {
   case 1:
     echo 'Monday';
   case 2:
     echo 'Tuesday';
     break;
   default:
     echo 'Other day';
 }
medium
A. Missing break after case 1 causes fall-through.
B. Switch statement syntax is incorrect.
C. Variable $day is not defined.
D. Default case should be first.

Solution

  1. Step 1: Check breaks in cases

    Case 1 has no break, so if matched, it falls through to case 2.
  2. Step 2: Understand effect of missing break

    Missing break causes code for case 2 to run even if case 1 matches, which is usually unintended.
  3. Final Answer:

    Missing break after case 1 causes fall-through. -> Option A
  4. Quick Check:

    Break missing after case 1 causes fall-through [OK]
Hint: Always add break after each case to avoid fall-through [OK]
Common Mistakes:
  • Ignoring missing break causes multiple cases to run
  • Thinking default must be first
  • Assuming variable is undefined
5. Given this PHP code, what will be the output?
 $score = 85;
 switch (true) {
   case ($score >= 90):
     echo 'Grade A';
     break;
   case ($score >= 80):
     echo 'Grade B';
     break;
   case ($score >= 70):
     echo 'Grade C';
     break;
   default:
     echo 'Fail';
 }
hard
A. Grade A
B. Grade B
C. Grade C
D. Fail

Solution

  1. Step 1: Understand switch(true) usage

    The switch compares true to each case condition result.
  2. Step 2: Evaluate each case condition

    $score is 85, so ($score >= 90) is false, ($score >= 80) is true, so it matches case 2 and prints 'Grade B'.
  3. Final Answer:

    Grade B -> Option B
  4. Quick Check:

    Switch(true) matches first true case = Grade B [OK]
Hint: Use switch(true) to check conditions in order [OK]
Common Mistakes:
  • Expecting switch to compare values directly
  • Not understanding switch(true) trick
  • Missing break causing fall-through
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard