Bird
Raised Fist0
PHPprogramming~5 mins

Operator precedence and evaluation in PHP

Choose your learning style10 modes available
Introduction
Operator precedence tells us which part of a math or logic expression gets done first. It helps avoid confusion and makes sure the computer calculates things the way we expect.
When you write math formulas in your code and want to know which operations happen first.
When combining different types of operations like addition and multiplication in one line.
When using logical conditions with AND, OR, and NOT to control program flow.
When you want to make your code clearer by adding parentheses to change the order of calculation.
When debugging unexpected results in calculations or conditions.
Syntax
PHP
<?php
// Example of operator precedence
$result = 3 + 4 * 2;
echo $result; // Outputs 11
?>
Multiplication (*) has higher precedence than addition (+), so it happens first.
Use parentheses () to change the order and make your code easier to read.
Examples
Multiplication happens first: 3 * 4 = 12, then 2 + 12 = 14.
PHP
<?php
// Multiplication before addition
echo 2 + 3 * 4; // Outputs 14
?>
Parentheses make addition happen first: 2 + 3 = 5, then 5 * 4 = 20.
PHP
<?php
// Using parentheses to change order
echo (2 + 3) * 4; // Outputs 20
?>
AND (&&) happens before OR (||), so false && false = false, then true || false = true.
PHP
<?php
// Logical operators precedence
var_dump(true || false && false); // Outputs bool(true)
?>
Sample Program
This program shows how PHP calculates expressions based on operator precedence rules.
PHP
<?php
// Demonstrate operator precedence and evaluation
$a = 5 + 3 * 2; // 3*2=6, then 5+6=11
$b = (5 + 3) * 2; // 5+3=8, then 8*2=16
$c = true || false && false; // false && false = false, then true || false = true

echo "$a = $a\n";
echo "$b = $b\n";
echo "$c = ";
var_dump($c);
?>
OutputSuccess
Important Notes
Remember that multiplication and division happen before addition and subtraction.
Logical AND (&&) has higher precedence than logical OR (||).
Use parentheses to make your code clear and avoid mistakes.
Summary
Operator precedence decides which part of an expression runs first.
Multiplication and division come before addition and subtraction.
Parentheses can change the order and make your code easier to understand.

Practice

(1/5)
1. In PHP, which operator has the highest precedence among these: +, *, -, /?
easy
A. All have the same precedence
B. Addition (+)
C. Subtraction (-)
D. Multiplication (*) and division (/)

Solution

  1. Step 1: Recall operator precedence rules

    Multiplication (*) and division (/) have higher precedence than addition (+) and subtraction (-).
  2. Step 2: Compare given operators

    Among +, -, *, /, the * and / operators are evaluated first.
  3. Final Answer:

    Multiplication (*) and division (/) -> Option D
  4. Quick Check:

    Higher precedence = * and / [OK]
Hint: Remember: multiply/divide before add/subtract [OK]
Common Mistakes:
  • Thinking addition has higher precedence
  • Assuming all operators have equal precedence
  • Confusing subtraction with division precedence
2. Which of the following PHP expressions is syntactically correct and respects operator precedence?
easy
A. $result = 5 + 3 * 2;
B. $result = 5 + * 3 2;
C. $result = 5 + (3 * 2;
D. $result = 5 + 3 *;

Solution

  1. Step 1: Check syntax of each expression

    $result = 5 + 3 * 2; is a valid PHP expression with correct operator placement. Options B, C, and D have syntax errors like misplaced operators or missing parentheses.
  2. Step 2: Confirm operator precedence in $result = 5 + 3 * 2;

    Multiplication (*) happens before addition (+), so expression is valid and clear.
  3. Final Answer:

    $result = 5 + 3 * 2; -> Option A
  4. Quick Check:

    Valid syntax and precedence = $result = 5 + 3 * 2; [OK]
Hint: Check for misplaced operators and balanced parentheses [OK]
Common Mistakes:
  • Leaving out parentheses
  • Placing operators without operands
  • Unbalanced parentheses
3. What is the output of the following PHP code?
$a = 4 + 2 * 3 - 1;
medium
A. 11
B. 17
C. 9
D. 15

Solution

  1. Step 1: Apply operator precedence

    Multiplication (*) happens before addition (+) and subtraction (-). So calculate 2 * 3 = 6 first.
  2. Step 2: Calculate the full expression

    Expression becomes 4 + 6 - 1 = 9. Then 4 + 6 = 10, 10 - 1 = 9.
  3. Final Answer:

    9 -> Option A
  4. Quick Check:

    Multiplication first, then add/subtract = 9 [OK]
Hint: Multiply before adding or subtracting [OK]
Common Mistakes:
  • Adding before multiplying
  • Subtracting before multiplying
  • Ignoring operator precedence
4. Find the error in this PHP expression:
$result = 10 - 4 / 2 *;
medium
A. Division operator used incorrectly
B. Missing operand after the last operator
C. Subtraction operator has wrong precedence
D. Expression is correct

Solution

  1. Step 1: Analyze the expression syntax

    The expression ends with an operator '*', but no operand follows it. This is a syntax error.
  2. Step 2: Confirm the error type

    Operators must have operands on both sides. Missing operand after '*' causes error.
  3. Final Answer:

    Missing operand after the last operator -> Option B
  4. Quick Check:

    Operator must have operands both sides [OK]
Hint: Check if every operator has two operands [OK]
Common Mistakes:
  • Ignoring missing operand errors
  • Thinking operator precedence causes error
  • Assuming expression is valid
5. Given the PHP expression:
$value = 8 + 2 * (5 - 3) / 2 - 1;

What is the correct value of $value after evaluation?
hard
A. 9
B. 10
C. 8
D. 11

Solution

  1. Step 1: Evaluate parentheses first

    Calculate (5 - 3) = 2.
  2. Step 2: Apply multiplication and division next

    Calculate 2 * 2 = 4, then 4 / 2 = 2.
  3. Step 3: Perform addition and subtraction left to right

    Calculate 8 + 2 = 10, then 10 - 1 = 9.
  4. Final Answer:

    8 -> Option C
  5. Quick Check:

    Parentheses, then multiply/divide, then add/subtract = 8 [OK]
Hint: Calculate parentheses first, then multiply/divide, then add/subtract [OK]
Common Mistakes:
  • Ignoring parentheses
  • Doing addition before multiplication
  • Dividing before multiplying inside parentheses
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