Bird
Raised Fist0
PHPprogramming~20 mins

For loop execution model in PHP - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
For Loop Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
Output of a simple for loop with break
What is the output of this PHP code?
PHP
<?php
for ($i = 0; $i < 5; $i++) {
    if ($i == 3) {
        break;
    }
    echo $i . ' ';
}
?>
A0 1 2
B0 1 2 3
C0 1 2 3 4
D1 2 3
Attempts:
2 left
💡 Hint
The loop stops when the condition inside the if is true.
❓ Predict Output
intermediate
2:00remaining
For loop with continue statement
What will this PHP code output?
PHP
<?php
for ($i = 0; $i < 5; $i++) {
    if ($i % 2 == 0) {
        continue;
    }
    echo $i . ' ';
}
?>
A1 3
B0 2 4
C1 3 5
D0 1 2 3 4
Attempts:
2 left
💡 Hint
The continue skips the current loop iteration when the number is even.
❓ Predict Output
advanced
2:00remaining
For loop with multiple expressions in control
What is the output of this PHP code?
PHP
<?php
for ($i = 0, $j = 5; $i < 3; $i++, $j--) {
    echo $i . '-' . $j . ' ';
}
?>
A0-5 1-4
B0-5 1-4 2-3 3-2
C0-5 1-4 2-3
D5-0 4-1 3-2
Attempts:
2 left
💡 Hint
Both variables change each loop iteration.
❓ Predict Output
advanced
2:00remaining
For loop with missing increment expression
What will this PHP code output?
PHP
<?php
for ($i = 0; $i < 3;) {
    echo $i . ' ';
    $i++;
}
?>
A0 1 2 3
B0 1 2
CInfinite loop (no output ends)
DSyntax error
Attempts:
2 left
💡 Hint
Increment can be inside the loop body.
🧠 Conceptual
expert
2:00remaining
Understanding for loop execution order
In PHP, what is the correct order of execution for the parts of a for loop?
A3,1,2,4
B2,1,3,4
C1,3,2,4
D1,2,3,4
Attempts:
2 left
💡 Hint
Initialization happens once, then condition is checked before each loop.

Practice

(1/5)
1. What is the role of the condition part in a PHP for loop?
easy
A. It decides if the loop should continue running or stop.
B. It sets the starting value of the loop variable.
C. It changes the loop variable after each iteration.
D. It runs only after the loop finishes.

Solution

  1. Step 1: Understand the for loop parts

    A PHP for loop has three parts: initialization, condition, and increment.
  2. Step 2: Identify the condition's role

    The condition is checked before each loop run to decide if the loop continues or stops.
  3. Final Answer:

    It decides if the loop should continue running or stop. -> Option A
  4. Quick Check:

    Condition controls loop continuation = It decides if the loop should continue running or stop. [OK]
Hint: Condition controls loop stop or continue [OK]
Common Mistakes:
  • Confusing initialization with condition
  • Thinking increment runs before loop starts
  • Believing condition runs after loop ends
2. Which of the following is the correct syntax for a PHP for loop that counts from 0 to 4?
easy
A. for $i = 0; $i <= 4; $i++ {}
B. for ($i = 0; $i < 4; $i--) {}
C. for ($i = 0; $i <= 4; ++i) {}
D. for ($i = 0; $i <= 4; $i++) {}

Solution

  1. Step 1: Check for loop syntax rules

    PHP for loops require parentheses around initialization, condition, and increment, separated by semicolons.
  2. Step 2: Validate each option

    for ($i = 0; $i <= 4; $i++) {} uses correct syntax with $i starting at 0, condition $i <= 4, and increment $i++. Others have syntax errors or wrong increments.
  3. Final Answer:

    for ($i = 0; $i <= 4; $i++) {} -> Option D
  4. Quick Check:

    Correct for loop syntax = for ($i = 0; $i <= 4; $i++) {} [OK]
Hint: Use parentheses and semicolons correctly in for loops [OK]
Common Mistakes:
  • Missing parentheses around for loop parts
  • Using ++i without $ sign
  • Wrong increment direction (i-- instead of i++)
3. What will be the output of this PHP code?
$sum = 0;
for ($i = 1; $i <= 3; $i++) {
    $sum += $i;
}
echo $sum;
medium
A. 6
B. 123
C. 3
D. 0

Solution

  1. Step 1: Trace the loop iterations

    The loop runs with $i = 1, 2, 3. Each time, $sum adds $i: 0+1=1, 1+2=3, 3+3=6.
  2. Step 2: Calculate final sum

    After the loop, $sum is 6, which is printed by echo.
  3. Final Answer:

    6 -> Option A
  4. Quick Check:

    Sum 1+2+3 = 6 [OK]
Hint: Add loop variable each iteration to sum [OK]
Common Mistakes:
  • Concatenating numbers instead of adding
  • Starting loop at 0 instead of 1
  • Using wrong loop condition
4. Identify the error in this PHP for loop:
for ($i = 0; $i < 5; $i) {
    echo $i;
}
medium
A. Condition should be $i <= 5.
B. Missing increment operation in the loop header.
C. Initialization is incorrect.
D. Echo statement syntax is wrong.

Solution

  1. Step 1: Examine the for loop header

    The loop header has initialization ($i = 0), condition ($i < 5), but increment is just $i without ++ or --.
  2. Step 2: Identify the missing increment

    Without increment like $i++, the loop variable never changes, causing an infinite loop or no progress.
  3. Final Answer:

    Missing increment operation in the loop header. -> Option B
  4. Quick Check:

    Increment missing = Missing increment operation in the loop header. [OK]
Hint: Ensure increment changes loop variable each time [OK]
Common Mistakes:
  • Forgetting ++ or -- in increment
  • Changing condition to wrong comparison
  • Misplacing semicolons in loop header
5. You want to print all even numbers from 2 to 10 using a PHP for loop. Which code correctly does this?
hard
A. for ($i = 2; $i < 10; $i += 2) { echo $i . ' '; }
B. for ($i = 0; $i <= 10; $i += 2) { echo $i . ' '; }
C. for ($i = 1; $i <= 10; $i++) { if ($i % 2 == 0) echo $i . ' '; }
D. for ($i = 2; $i < 10; $i++) { if ($i % 2 == 0) echo $i . ' '; }

Solution

  1. Step 1: Understand the goal

    We want to print even numbers from 2 to 10 inclusive.
  2. Step 2: Check each option

    for ($i = 2; $i < 10; $i += 2) { echo $i . ' '; } prints 2 4 6 8, missing 10. for ($i = 1; $i <= 10; $i++) { if ($i % 2 == 0) echo $i . ' '; } loops 1 to 10 and prints only even numbers 2 4 6 8 10 correctly. for ($i = 2; $i < 10; $i++) { if ($i % 2 == 0) echo $i . ' '; } stops at 9, missing 10. for ($i = 0; $i <= 10; $i += 2) { echo $i . ' '; } starts at 0, which is not in the range 2 to 10.
  3. Step 3: Choose the best option

    for ($i = 1; $i <= 10; $i++) { if ($i % 2 == 0) echo $i . ' '; } is correct and flexible, printing even numbers by checking inside the loop.
  4. Final Answer:

    for ($i = 1; $i <= 10; $i++) { if ($i % 2 == 0) echo $i . ' '; } -> Option C
  5. Quick Check:

    Loop 1-10, print if even = for ($i = 1; $i <= 10; $i++) { if ($i % 2 == 0) echo $i . ' '; } [OK]
Hint: Use modulo % to check even numbers inside loop [OK]
Common Mistakes:
  • Stopping loop before 10
  • Starting loop at 0 when not needed
  • Forgetting to check even condition
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