Bird
Raised Fist0
PHPprogramming~20 mins

Assignment and compound assignment in PHP - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Assignment Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
Output of compound assignment with strings
What is the output of this PHP code?
PHP
<?php
$a = "Hello";
$a .= " World";
echo $a;
?>
AWorld
BHelloWorld
CHello
DHello World
Attempts:
2 left
💡 Hint
The .= operator adds the right string to the left string.
❓ Predict Output
intermediate
2:00remaining
Result of compound assignment with numbers
What is the value of $x after running this PHP code?
PHP
<?php
$x = 10;
$x *= 3 + 2;
echo $x;
?>
A50
B15
C60
D30
Attempts:
2 left
💡 Hint
Remember operator precedence: multiplication and addition.
❓ Predict Output
advanced
2:00remaining
Output of chained compound assignments
What is the output of this PHP code?
PHP
<?php
$a = 5;
$b = 10;
$c = 15;
$a += $b -= $c;
echo "$a $b $c";
?>
A0 -5 15
B20 -5 15
C20 25 15
D5 10 15
Attempts:
2 left
💡 Hint
Evaluate inner assignment first, then outer.
❓ Predict Output
advanced
2:00remaining
Effect of compound assignment with arrays
What error or output does this PHP code produce?
PHP
<?php
$arr = [1, 2, 3];
$arr += [4, 5];
print_r($arr);
?>
AArray ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
BArray ( [0] => 1 [1] => 2 [2] => 3 )
CFatal error: Unsupported operand types
DArray ( [0] => 1 [1] => 2 [2] => 3 [4] => 5 )
Attempts:
2 left
💡 Hint
The += operator for arrays adds elements with keys that do not exist in the left array.
❓ Predict Output
expert
2:00remaining
Final value after mixed compound assignments
What is the final value of $result after running this PHP code?
PHP
<?php
$result = 2;
$result *= 3;
$result += 4;
$result /= 2;
$result -= 1;
echo $result;
?>
A3
B5
C4
D6
Attempts:
2 left
💡 Hint
Calculate step by step following the order of operations.

Practice

(1/5)
1. What does the += operator do in PHP?
easy
A. Assigns the right value to the left variable without any operation
B. Multiplies the left variable by the right value
C. Subtracts the right value from the left variable
D. Adds the right value to the left variable and assigns the result to the left variable

Solution

  1. Step 1: Understand the += operator

    The += operator adds the value on the right to the variable on the left.
  2. Step 2: Assign the result back to the left variable

    It updates the left variable with the new sum.
  3. Final Answer:

    Adds the right value to the left variable and assigns the result to the left variable -> Option D
  4. Quick Check:

    += means add and assign [OK]
Hint: Think: add right to left and save in left [OK]
Common Mistakes:
  • Confusing += with simple assignment =
  • Thinking it subtracts or multiplies
  • Believing it only adds without assignment
2. Which of the following is the correct syntax to multiply a variable $x by 5 and update it in PHP?
easy
A. $x *= 5;
B. $x =* 5;
C. $x = *5;
D. $x = 5*;

Solution

  1. Step 1: Identify the correct compound assignment syntax

    The correct syntax for multiplying and assigning is $x *= 5; with no spaces between * and =.
  2. Step 2: Check other options for syntax errors

    The other options have incorrect placement of operators or missing operands.
  3. Final Answer:

    $x *= 5; -> Option A
  4. Quick Check:

    Use *= for multiply and assign [OK]
Hint: Remember no space: variable *= value [OK]
Common Mistakes:
  • Writing =* instead of *= operator
  • Adding spaces between * and =
  • Placing * or = incorrectly
3. What will be the output of the following PHP code?
$a = 10;
$a += 5;
$a -= 3;
echo $a;
medium
A. 10
B. 12
C. 8
D. 15

Solution

  1. Step 1: Calculate after first operation

    Initially, $a = 10. After $a += 5;, $a becomes 10 + 5 = 15.
  2. Step 2: Calculate after second operation

    Then $a -= 3; subtracts 3: 15 - 3 = 12.
  3. Final Answer:

    12 -> Option B
  4. Quick Check:

    10 + 5 - 3 = 12 [OK]
Hint: Perform operations step-by-step from top to bottom [OK]
Common Mistakes:
  • Ignoring the order of operations
  • Adding instead of subtracting in second step
  • Confusing initial value with final
4. Identify the error in the following PHP code:
$count = 5;
$count +== 3;
echo $count;
medium
A. Variable name is invalid
B. Missing semicolon after first line
C. Using +== instead of +=
D. echo statement syntax error

Solution

  1. Step 1: Check the compound assignment operator

    The operator +== is invalid in PHP. The correct operator to add and assign is +=.
  2. Step 2: Verify other parts of code

    Semicolons are present, variable name is valid, and echo syntax is correct.
  3. Final Answer:

    Using +== instead of += -> Option C
  4. Quick Check:

    Compound assignment must be +=, not +== [OK]
Hint: Remember compound operators have one = only [OK]
Common Mistakes:
  • Typing two equal signs in compound assignment
  • Confusing comparison (==) with assignment (=)
  • Assuming +== is valid operator
5. Given the code below, what will be the value of $result after execution?
$x = 4;
$y = 3;
$result = 10;
$result += $x * $y;
$result -= 5;
$result /= 2;
hard
A. 8.5
B. 6.5
C. 10
D. 9

Solution

  1. Step 1: Calculate multiplication and addition

    $x * $y = 4 * 3 = 12. Then $result += 12 means 10 + 12 = 22.
  2. Step 2: Subtract 5 from $result

    22 - 5 = 17.
  3. Step 3: Divide $result by 2

    17 / 2 = 8.5.
  4. Step 4: Check options carefully

    8.5 is 8.5, but note the question asks for final value of $result after all operations.
  5. Final Answer:

    8.5 -> Option A
  6. Quick Check:

    (10 + 4*3 - 5) / 2 = 8.5 [OK]
Hint: Follow order: multiply, add, subtract, divide [OK]
Common Mistakes:
  • Ignoring operator precedence
  • Doing operations in wrong order
  • Dividing before subtracting
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