Bird
Raised Fist0
PHPprogramming~10 mins

Logical operators in PHP - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to check if both conditions are true using the AND operator.

PHP
<?php
$age = 20;
$hasID = true;
if ($age >= 18 [1] $hasID) {
    echo "Access granted.";
} else {
    echo "Access denied.";
}
?>
Drag options to blanks, or click blank then click option'
Aand
B&&
C||
Dor
Attempts:
3 left
💡 Hint
Common Mistakes
Using || which means OR, not AND.
Using 'and' keyword which has lower precedence and can cause unexpected results.
2fill in blank
medium

Complete the code to check if at least one condition is true using the OR operator.

PHP
<?php
$isWeekend = false;
$isHoliday = true;
if ($isWeekend [1] $isHoliday) {
    echo "You can relax today.";
} else {
    echo "You have to work.";
}
?>
Drag options to blanks, or click blank then click option'
Axor
B&&
Cand
D||
Attempts:
3 left
💡 Hint
Common Mistakes
Using && which requires both conditions to be true.
Using xor which returns true only if exactly one condition is true.
3fill in blank
hard

Fix the error in the code to correctly negate the condition using the NOT operator.

PHP
<?php
$isRaining = false;
if ([1]$isRaining) {
    echo "Take an umbrella.";
} else {
    echo "No umbrella needed.";
}
?>
Drag options to blanks, or click blank then click option'
A!
Bnot
C~
D!!
Attempts:
3 left
💡 Hint
Common Mistakes
Using ~ which is bitwise NOT, not logical NOT.
Using 'not ' which is valid but less common and can cause precedence issues.
4fill in blank
hard

Fill in the blank to create a condition that is true only if exactly one of the two variables is true.

PHP
<?php
$hasTicket = true;
$hasInvitation = false;
if ($hasTicket [1] $hasInvitation) {
    echo "Entry allowed.";
} else {
    echo "Entry denied.";
}
?>
Drag options to blanks, or click blank then click option'
A&&
B||
Cxor
Dand
Attempts:
3 left
💡 Hint
Common Mistakes
Using && which requires both to be true.
Using || which allows both to be true.
5fill in blank
hard

Fill all three blanks to create a complex condition that checks if a user is an adult and either has a membership or a guest pass.

PHP
<?php
$age = 22; $hasMembership = false;
$hasGuestPass = true;
if ($age >= [1] [3] ($hasMembership [2] $hasGuestPass)) {
    echo "Access granted.";
} else {
    echo "Access denied.";
}
?>
Drag options to blanks, or click blank then click option'
A18
B||
C&&
D21
Attempts:
3 left
💡 Hint
Common Mistakes
Using 21 instead of 18 for adult age.
Mixing up && and || operators.

Practice

(1/5)
1. Which logical operator in PHP returns true only if both conditions are true?
easy
A. && (AND)
B. || (OR)
C. ! (NOT)
D. xor

Solution

  1. Step 1: Understand the AND operator

    The AND operator && returns true only if both conditions it connects are true.
  2. Step 2: Compare with other operators

    The OR operator || returns true if at least one condition is true, NOT ! negates a condition, and xor returns true if exactly one condition is true.
  3. Final Answer:

    && (AND) -> Option A
  4. Quick Check:

    AND = both true [OK]
Hint: AND means both must be true to get true [OK]
Common Mistakes:
  • Confusing OR (||) with AND (&&)
  • Thinking NOT (!) combines two conditions
  • Assuming xor behaves like AND
2. Which of the following is the correct syntax for the logical OR operator in PHP?
easy
A. !
B. &&
C. ||
D. and

Solution

  1. Step 1: Identify the OR operator syntax

    In PHP, the logical OR operator is written as ||.
  2. Step 2: Differentiate from other operators

    && is AND, ! is NOT, and and is a lower precedence alternative but not the common OR operator symbol.
  3. Final Answer:

    || -> Option C
  4. Quick Check:

    OR = || symbol [OK]
Hint: OR operator is double vertical bars || [OK]
Common Mistakes:
  • Using single | instead of ||
  • Confusing AND (&&) with OR (||)
  • Using 'and' keyword instead of ||
3. What will be the output of the following PHP code?
$a = true;
$b = false;
if ($a && !$b) {
echo 'Yes';
} else {
echo 'No';
}
medium
A. No
B. Yes
C. Syntax Error
D. Nothing

Solution

  1. Step 1: Evaluate the NOT operator on $b

    $b is false, so !$b becomes true.
  2. Step 2: Evaluate the AND condition

    $a is true and !$b is true, so $a && !$b is true.
  3. Final Answer:

    Yes -> Option B
  4. Quick Check:

    true AND true = true [OK]
Hint: NOT flips false to true, AND needs both true [OK]
Common Mistakes:
  • Ignoring the NOT operator effect
  • Assuming false && true is true
  • Confusing output strings
4. Find the error in this PHP code snippet:
$x = true;
$y = false;
if ($x || ! $y) {
echo 'True';
else {
echo 'False';
}
medium
A. Missing closing brace for if block
B. Missing semicolon after echo statement
C. Incorrect use of logical OR operator
D. Missing closing parenthesis in if condition

Solution

  1. Step 1: Check the if statement syntax

    The if condition has correct parentheses and logical operators.
  2. Step 2: Check the braces for if-else blocks

    The if block opens with { but does not have a closing } before the else block starts.
  3. Final Answer:

    Missing closing brace for if block -> Option A
  4. Quick Check:

    Braces must match for if-else [OK]
Hint: Count opening and closing braces carefully [OK]
Common Mistakes:
  • Assuming missing parenthesis causes error
  • Thinking logical OR syntax is wrong
  • Ignoring missing brace errors
5. Given the variables:
$a = false;
$b = true;
$c = false;

Which expression evaluates to true?
($a || $b) && !$c
hard
A. null
B. false
C. Syntax Error
D. true

Solution

  1. Step 1: Evaluate the OR inside parentheses

    $a is false, $b is true, so $a || $b is true.
  2. Step 2: Evaluate the NOT operator on $c

    $c is false, so !$c is true.
  3. Step 3: Evaluate the AND between results

    true AND true equals true.
  4. Final Answer:

    true -> Option D
  5. Quick Check:

    (false OR true) AND NOT false = true [OK]
Hint: Evaluate inside parentheses first, then NOT, then AND [OK]
Common Mistakes:
  • Ignoring operator precedence
  • Misapplying NOT operator
  • Assuming OR returns false if one operand is false
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