📖 Scenario: Imagine you are creating a simple program that decides what message to show based on the time of day. This is like how a smart assistant might greet you differently in the morning, afternoon, or evening.
🎯 Goal: You will build a PHP program that uses conditional flow to check the time of day and print the correct greeting message.
📋 What You'll Learn
Create a variable to hold the current hour as a number
Create a variable to hold the greeting message
Use conditional statements to set the greeting based on the hour
Print the greeting message
💡 Why This Matters
🌍 Real World
Programs often need to respond differently depending on conditions, like showing different messages or performing different tasks.
💼 Career
Understanding conditional flow is essential for any programming job because it allows software to behave smartly and adapt to user input or data.
Progress0 / 4 steps
1
Set the current hour
Create a variable called $hour and set it to the number 14 to represent the current hour in 24-hour format.
PHP
Hint
Use $hour = 14; to set the hour.
2
Create a greeting variable
Create a variable called $greeting and set it to an empty string "".
PHP
Hint
Use $greeting = ""; to create an empty string variable.
3
Use conditional flow to set greeting
Use if, elseif, and else statements to set $greeting to "Good morning" if $hour is less than 12, "Good afternoon" if $hour is between 12 and 17 (inclusive), and "Good evening" otherwise.
PHP
Hint
Use if, elseif, and else to check the hour and assign the greeting.
4
Print the greeting message
Use echo to print the value of $greeting.
PHP
Hint
Use echo $greeting; to show the greeting.
Practice
(1/5)
1. Why do we need conditional flow in PHP programs?
easy
A. To store data permanently on the server
B. To repeat the same code many times without change
C. To make decisions and run different code based on conditions
D. To create new variables automatically
Solution
Step 1: Understand the purpose of conditional flow
Conditional flow allows a program to choose what code to run based on true or false conditions.
Step 2: Compare options with this purpose
Only To make decisions and run different code based on conditions describes making decisions and running different code based on conditions, which matches the purpose.
Final Answer:
To make decisions and run different code based on conditions -> Option C
Quick Check:
Conditional flow = decision making [OK]
Hint: Conditional flow means choosing code to run based on true/false [OK]
Common Mistakes:
Confusing conditional flow with loops
Thinking conditional flow stores data
Believing conditional flow creates variables
2. Which of the following is the correct syntax for an if statement in PHP?
easy
A. if ($a > $b) { echo 'Yes'; }
B. if $a > $b then echo 'Yes';
C. if ($a > $b) echo 'Yes'
D. if $a > $b { echo 'Yes'; }
Solution
Step 1: Recall PHP if statement syntax
PHP requires parentheses around the condition and curly braces around the code block.
Step 2: Check each option for correct syntax
if ($a > $b) { echo 'Yes'; } uses parentheses and curly braces correctly. if ($a > $b) echo 'Yes' misses semicolon after echo and curly braces, causing syntax error. The other options lack parentheses or use invalid 'then' keyword.
Final Answer:
if ($a > $b) { echo 'Yes'; } -> Option A
Quick Check:
Correct if syntax = if ($a > $b) { echo 'Yes'; } [OK]
Hint: Use parentheses for condition and braces for code block [OK]
PHP requires parentheses around the condition in an if statement.
Step 2: Identify the missing parentheses
The code uses if $age > 18 without parentheses, which causes a syntax error.
Final Answer:
Missing parentheses around the condition -> Option B
Quick Check:
if condition needs parentheses [OK]
Hint: Always put parentheses around if conditions [OK]
Common Mistakes:
Forgetting parentheses in if conditions
Thinking semicolons are needed after echo inside braces
Assuming else keyword is wrong
5. You want to write a PHP program that prints 'Good morning' if the hour is less than 12, 'Good afternoon' if the hour is between 12 and 17 (inclusive), and 'Good evening' otherwise. Which conditional flow structure correctly implements this?
hard
A. if ($hour < 12) { echo 'Good morning'; } else if ($hour > 12 && $hour < 17) { echo 'Good afternoon'; } else { echo 'Good evening'; }
B. if ($hour <= 12) { echo 'Good morning'; } else if ($hour < 17) { echo 'Good afternoon'; } else { echo 'Good evening'; }
C. if ($hour < 12) { echo 'Good morning'; } if ($hour >= 12 && $hour <= 17) { echo 'Good afternoon'; } else { echo 'Good evening'; }
Step 1: Understand the conditions for each greeting
'Good morning' if hour < 12, 'Good afternoon' if 12 ≤ hour ≤ 17, else 'Good evening'.
Step 2: Analyze the correct structure
if ($hour < 12) { echo 'Good morning'; } elseif ($hour <= 17) { echo 'Good afternoon'; } else { echo 'Good evening'; } works perfectly: elseif only runs if hour ≥ 12, and ≤ 17 covers 12 to 17 inclusive without gaps or overlaps.
Step 3: Check other structures for errors
The structure with if ($hour <= 12) for morning misclassifies hour 12. The structure with separate if for afternoon followed by else prints both morning and evening for hour < 12. The structure with else if ($hour > 12 && $hour < 17) excludes 12 and 17 from afternoon.