📖 Scenario: You are creating a simple program to check if a person is old enough to vote. Voting age is 18 years or older.
🎯 Goal: Build a PHP program that uses if-else statements to decide if a person can vote based on their age.
📋 What You'll Learn
Create a variable called age with a specific value.
Create a variable called voting_age set to 18.
Use an if-else statement to check if age is greater than or equal to voting_age.
Print "You can vote." if the person is old enough.
Print "You cannot vote yet." if the person is too young.
💡 Why This Matters
🌍 Real World
Checking age eligibility is common in websites for voting, driving licenses, or age-restricted content.
💼 Career
Understanding if-else logic is fundamental for programming jobs that require decision making and flow control.
Progress0 / 4 steps
1
Create the age variable
Create a variable called age and set it to 20.
PHP
Hint
Use $age = 20; to create the variable.
2
Set the voting age
Create a variable called voting_age and set it to 18.
PHP
Hint
Use $voting_age = 18; to create the variable.
3
Write the if-else statement
Write an if statement that checks if $age is greater than or equal to $voting_age. If true, print "You can vote.". Otherwise, print "You cannot vote yet.".
PHP
Hint
Use if ($age >= $voting_age) { ... } else { ... } and print() inside.
4
Display the result
Run the program and print the output to show if the person can vote or not.
PHP
Hint
The program already prints the result. Just run it to see the output.
Practice
(1/5)
1. What does an if-else statement do in PHP?
easy
A. It repeats code multiple times.
B. It chooses one block of code to run based on a condition.
C. It runs all blocks of code regardless of conditions.
D. It defines a function.
Solution
Step 1: Understand the purpose of if-else
An if-else statement checks a condition and runs code based on whether the condition is true or false.
Step 2: Compare options with definition
Only "It chooses one block of code to run based on a condition." correctly describes this behavior; others describe loops or functions.
Final Answer:
It chooses one block of code to run based on a condition. -> Option B
Quick Check:
If-else = choose one path [OK]
Hint: If-else picks one path based on true or false [OK]
Common Mistakes:
Thinking if-else runs all code blocks
Confusing if-else with loops
Believing if-else defines functions
2. Which of the following is the correct syntax for an if-else statement in PHP?
easy
A. if ($x > 10) { echo 'Yes' } else { echo 'No' }
B. if $x > 10 then echo 'Yes' else echo 'No'
C. if ($x > 10) echo 'Yes' else echo 'No'
D. if ($x > 10) { echo 'Yes'; } else { echo 'No'; }
Solution
Step 1: Check PHP if-else syntax rules
PHP requires parentheses around the condition and braces around the code blocks.
Step 2: Identify correct syntax
if ($x > 10) { echo 'Yes'; } else { echo 'No'; } uses parentheses and braces correctly. if $x > 10 then echo 'Yes' else echo 'No' uses invalid keywords. if ($x > 10) echo 'Yes' else echo 'No' misses braces which is allowed but needs semicolons. if ($x > 10) { echo 'Yes' } else { echo 'No' } misses semicolons inside braces.
Final Answer:
if ($x > 10) { echo 'Yes'; } else { echo 'No'; } -> Option D
The variable $score is 75, which is greater than or equal to 60, so the condition is true.
Step 2: Determine which block runs
Since the condition is true, the code inside the if block runs, printing "Pass".
Final Answer:
Pass -> Option A
Quick Check:
75 >= 60 is true, so output = Pass [OK]
Hint: Check if condition is true to pick if or else output [OK]
Common Mistakes:
Confusing true and false branches
Ignoring comparison operators
Expecting numeric output instead of string
4. Find the error in this PHP code snippet:
if ($age > 18)
echo "Adult";
else
echo "Minor"
medium
A. Missing parentheses around condition
B. Missing braces around if and else blocks
C. Missing semicolon after echo "Minor"
D. Incorrect comparison operator
Solution
Step 1: Check syntax for echo statements
Each echo statement must end with a semicolon in PHP.
Step 2: Identify missing semicolon
The echo "Minor" line is missing a semicolon at the end, causing a syntax error.
Final Answer:
Missing semicolon after echo "Minor" -> Option C
Quick Check:
Every statement needs semicolon [OK]
Hint: Always end echo statements with semicolon [OK]
Common Mistakes:
Forgetting semicolon after last statement
Thinking braces are always required
Misreading comparison operators
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 code correctly implements this using if-else statements?
hard
A. if ($hour < 12) {
echo "Good morning";
} else if ($hour <= 17) {
echo "Good afternoon";
} else {
echo "Good evening";
}
B. if ($hour < 12) {
echo "Good morning";
} else if ($hour > 12 && $hour < 17) {
echo "Good afternoon";
} else {
echo "Good evening";
}
C. if ($hour <= 12) {
echo "Good morning";
} else if ($hour >= 12 && $hour <= 17) {
echo "Good afternoon";
} else {
echo "Good evening";
}
D. if ($hour < 12) {
echo "Good morning";
} else if ($hour >= 12 && $hour < 17) {
echo "Good afternoon";
} else {
echo "Good evening";
}
Solution
Step 1: Analyze the conditions for each greeting
"Good morning" if hour < 12, "Good afternoon" if hour between 12 and 17 inclusive, else "Good evening".
Step 2: Check each option's condition ranges
if ($hour < 12) {
echo "Good morning";
} else if ($hour <= 17) {
echo "Good afternoon";
} else {
echo "Good evening";
} correctly uses $hour < 12, then $hour <= 17 for afternoon, covering 12 to 17 inclusive. Others either exclude 12 or 17 or overlap incorrectly.
Final Answer:
if ($hour < 12) {
echo "Good morning";
} else if ($hour <= 17) {
echo "Good afternoon";
} else {
echo "Good evening";
} -> Option A
Quick Check:
Correct ranges cover all hours without gaps [OK]
Hint: Check boundary conditions carefully in if-else chains [OK]
Common Mistakes:
Using wrong comparison operators for boundaries
Overlapping or missing hour ranges
Confusing inclusive and exclusive conditions
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.