Bird
Raised Fist0
PHPprogramming~5 mins

Ternary operator in PHP - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is the ternary operator in PHP?
The ternary operator is a short way to write an if-else statement. It uses the syntax: condition ? value_if_true : value_if_false.
Click to reveal answer
beginner
How does the ternary operator work in PHP?
It checks the condition before the question mark (?). If true, it returns the value after the question mark and before the colon (:). If false, it returns the value after the colon (:).
Click to reveal answer
beginner
Rewrite this if-else using ternary operator:
if ($age >= 18) { $status = 'adult'; } else { $status = 'minor'; }
$status = ($age >= 18) ? 'adult' : 'minor';
Click to reveal answer
intermediate
Can the ternary operator be nested in PHP?
Yes, you can nest ternary operators inside each other, but it can make code harder to read. Use parentheses to clarify.
Click to reveal answer
beginner
What is the benefit of using the ternary operator?
It makes code shorter and easier to write for simple conditions, reducing the need for multiple lines of if-else statements.
Click to reveal answer
What does this PHP code output?
echo (5 > 3) ? 'Yes' : 'No';
ANo
BYes
C5 > 3
DError
Which symbol separates the true and false parts in a ternary operator?
A:
B?
C;
D,
What is the correct syntax for a ternary operator in PHP?
Aif (condition) true_value else false_value;
Bcondition : true_value ? false_value;
Ccondition ? false_value : true_value;
Dcondition ? true_value : false_value;
Can ternary operators replace all if-else statements?
ANo, only simple conditions
BOnly with numbers
COnly in loops
DYes, always
What will this code output?
$x = 10; echo ($x < 5) ? 'Small' : 'Large';
A10
BSmall
CLarge
DError
Explain how the ternary operator works in PHP and give a simple example.
Think of it as a short if-else in one line.
You got /6 concepts.
    Describe when it is better to use a ternary operator instead of an if-else statement.
    Use it for quick decisions, not for complicated checks.
    You got /4 concepts.

      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