Bird
Raised Fist0
PHPprogramming~15 mins

Ternary operator in PHP - Mini Project: Build & Apply

Choose your learning style10 modes available
Using the Ternary Operator in PHP
📖 Scenario: You are creating a simple PHP script to check if a person is old enough to vote. Voting age is 18 years or older.
🎯 Goal: Build a PHP script that uses the ternary operator to decide if a person can vote based on their age.
📋 What You'll Learn
Create a variable called age with a specific integer value.
Create a variable called voting_age set to 18.
Use the ternary operator to create a variable can_vote that stores the string 'Yes' if age is greater than or equal to voting_age, otherwise 'No'.
Print the value of can_vote.
💡 Why This Matters
🌍 Real World
Ternary operators are used in real-world PHP scripts to make quick decisions without writing long if-else statements.
💼 Career
Understanding ternary operators helps you write cleaner and shorter code, a valuable skill for PHP developers.
Progress0 / 4 steps
1
Create the age variable
Create a variable called age and set it to the integer 20.
PHP
Hint

Use $age = 20; to create the variable.

2
Create the voting_age variable
Create a variable called voting_age and set it to the integer 18.
PHP
Hint

Use $voting_age = 18; to create the variable.

3
Use the ternary operator to set can_vote
Use the ternary operator to create a variable called can_vote that stores the string 'Yes' if age is greater than or equal to voting_age, otherwise 'No'.
PHP
Hint

Use $can_vote = ($age >= $voting_age) ? 'Yes' : 'No'; to assign the value.

4
Print the result
Print the value of the variable can_vote using echo.
PHP
Hint

Use echo $can_vote; to print the result.

Practice

(1/5)
1. What does the ternary operator condition ? value_if_true : value_if_false do in PHP?
easy
A. It chooses one of two values based on the condition's truth.
B. It creates a loop that runs twice.
C. It defines a function with two parameters.
D. It comments out a line of code.

Solution

  1. Step 1: Understand the ternary operator format

    The ternary operator uses a condition followed by a question mark, then two values separated by a colon.
  2. Step 2: Identify its purpose

    It returns the first value if the condition is true, otherwise the second value.
  3. Final Answer:

    It chooses one of two values based on the condition's truth. -> Option A
  4. Quick Check:

    condition ? true_value : false_value = chooses value [OK]
Hint: Think: condition true? pick first : else pick second [OK]
Common Mistakes:
  • Confusing ternary with loops
  • Thinking it defines functions
  • Assuming it comments code
2. Which of the following is the correct syntax for a ternary operator in PHP?
easy
A. condition ? value_if_true, value_if_false;
B. condition : value_if_true ? value_if_false;
C. condition ? value_if_true : value_if_false;
D. condition ? (value_if_true : value_if_false);

Solution

  1. Step 1: Recall ternary operator syntax

    The correct syntax is: condition ? value_if_true : value_if_false;
  2. Step 2: Check each option

    Only condition ? value_if_true : value_if_false; matches the correct syntax exactly.
  3. Final Answer:

    condition ? value_if_true : value_if_false; -> Option C
  4. Quick Check:

    Syntax = condition ? true : false [OK]
Hint: Remember: question mark before colon in ternary [OK]
Common Mistakes:
  • Swapping question mark and colon
  • Using comma instead of colon
  • Adding extra parentheses incorrectly
3. What is the output of this PHP code?
$age = 20;
$result = ($age >= 18) ? 'Adult' : 'Minor';
echo $result;
medium
A. Adult
B. Error
C. 20
D. Minor

Solution

  1. Step 1: Evaluate the condition

    $age is 20, so ($age >= 18) is true.
  2. Step 2: Apply ternary operator

    Since condition is true, $result is set to 'Adult'.
  3. Final Answer:

    Adult -> Option A
  4. Quick Check:

    20 >= 18 ? 'Adult' : 'Minor' = 'Adult' [OK]
Hint: Check condition result true or false to pick output [OK]
Common Mistakes:
  • Assuming output is the number 20
  • Confusing true and false branches
  • Expecting syntax error
4. Find the error in this PHP code using ternary operator:
$score = 75;
$grade = $score > 60 ? 'Pass' 'Fail';
echo $grade;
medium
A. Wrong variable name used
B. Missing colon ':' between true and false values
C. Ternary operator cannot be used with strings
D. Missing semicolon after echo

Solution

  1. Step 1: Check ternary operator syntax

    The ternary operator requires a colon ':' between the true and false values.
  2. Step 2: Identify the missing colon

    Code has 'Pass' 'Fail' without ':' causing syntax error.
  3. Final Answer:

    Missing colon ':' between true and false values -> Option B
  4. Quick Check:

    Syntax needs ? true : false [OK]
Hint: Always put ':' between true and false parts [OK]
Common Mistakes:
  • Omitting colon ':'
  • Using comma instead of colon
  • Confusing variable names
5. Given an array of numbers, which PHP code correctly uses the ternary operator to create a new array labeling each number as 'Even' or 'Odd'?
hard
A. $numbers = [1,2,3]; $labels = array_map(fn($n) => $n % 2 == 1 ? 'Even' : 'Odd', $numbers);
B. $numbers = [1,2,3]; $labels = array_map(fn($n) => $n % 2 == 0 ? 'Odd' : 'Even', $numbers);
C. $numbers = [1,2,3]; $labels = array_map(fn($n) => $n % 2 ? 'Even' : 'Odd', $numbers);
D. $numbers = [1,2,3]; $labels = array_map(fn($n) => $n % 2 == 0 ? 'Even' : 'Odd', $numbers);

Solution

  1. Step 1: Understand the condition for even or odd

    A number is even if $n % 2 == 0, otherwise odd.
  2. Step 2: Check each option's condition and labels

    $numbers = [1,2,3]; $labels = array_map(fn($n) => $n % 2 == 0 ? 'Even' : 'Odd', $numbers); correctly labels even numbers as 'Even' and odd as 'Odd'. Others swap or invert labels.
  3. Final Answer:

    $numbers = [1,2,3]; $labels = array_map(fn($n) => $n % 2 == 0 ? 'Even' : 'Odd', $numbers); -> Option D
  4. Quick Check:

    Even check with ternary = correct labeling [OK]
Hint: Even numbers have remainder 0 when divided by 2 [OK]
Common Mistakes:
  • Swapping 'Even' and 'Odd' labels
  • Using wrong modulo condition
  • Confusing truthy/falsy values in ternary
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