Bird
Raised Fist0
PHPprogramming~5 mins

While loop execution model in PHP

Choose your learning style10 modes available
Introduction

A while loop repeats a set of instructions as long as a condition is true. It helps do tasks multiple times without writing the same code again.

When you want to keep asking a user for input until they give a valid answer.
When you want to repeat an action until a certain number is reached.
When you want to process items in a list but don't know how many items there are.
When you want to keep running a game loop until the player quits.
Syntax
PHP
<?php
while (condition) {
    // code to repeat
}
?>

The condition is checked before each loop. If it is true, the code inside runs.

If the condition is false at the start, the code inside the loop never runs.

Examples
This prints numbers 1 to 3. The loop stops when $count becomes 4.
PHP
<?php
$count = 1;
while ($count <= 3) {
    echo "Count is $count\n";
    $count++;
}
?>
This loop runs only once because $keepGoing becomes false inside the loop.
PHP
<?php
$keepGoing = true;
while ($keepGoing) {
    echo "Running loop\n";
    $keepGoing = false;
}
?>
Sample Program

This program uses a while loop to print numbers from 1 to 5. It starts at 1 and adds 1 each time until it reaches 5.

PHP
<?php
// Print numbers from 1 to 5 using while loop
$number = 1;
while ($number <= 5) {
    echo "Number: $number\n";
    $number++;
}
?>
OutputSuccess
Important Notes

Make sure the condition will eventually become false, or the loop will run forever.

You can change variables inside the loop to control when it stops.

Summary

A while loop repeats code while a condition is true.

The condition is checked before each repetition.

Use it when you don't know how many times you need to repeat in advance.

Practice

(1/5)
1.

What does a while loop do in PHP?

easy
A. Runs code a fixed number of times
B. Repeats code as long as a condition is true
C. Executes code only once
D. Stops the program immediately

Solution

  1. Step 1: Understand the while loop purpose

    A while loop repeats its code block while the condition remains true.
  2. Step 2: Compare options with definition

    Only Repeats code as long as a condition is true matches this behavior exactly.
  3. Final Answer:

    Repeats code as long as a condition is true -> Option B
  4. Quick Check:

    while loop = repeat while true [OK]
Hint: Remember: while loops run only if condition is true [OK]
Common Mistakes:
  • Thinking while loops run a fixed number of times
  • Confusing while with if statement
  • Assuming while loops always run at least once
2.

Which of the following is the correct syntax for a while loop in PHP?

?
easy
A. while ($i < 5); { echo $i; $i++; }
B. while $i < 5 { echo $i; $i++; }
C. while ($i < 5) { echo $i; $i++; }
D. while ($i < 5) echo $i; $i++;

Solution

  1. Step 1: Check correct while loop syntax

    In PHP, the condition must be in parentheses and the block in braces.
  2. Step 2: Identify syntax errors in options

    while ($i < 5) { echo $i; $i++; } uses correct parentheses and braces. Others miss braces, have semicolon errors, or missing parentheses.
  3. Final Answer:

    while ($i < 5) { echo $i; $i++; } -> Option C
  4. Quick Check:

    while (condition) { code } [OK]
Hint: Use parentheses for condition and braces for code block [OK]
Common Mistakes:
  • Omitting parentheses around condition
  • Adding semicolon after while condition
  • Not using braces for multiple statements
3.

What will be the output of this PHP code?

$i = 1;
while ($i <= 3) {
    echo $i . ' ';
    $i++;
}
medium
A. 1 2 3
B. 1 2 3 4
C. 123
D. 2 3 4

Solution

  1. Step 1: Trace the loop iterations

    Variable $i starts at 1 and increments by 1 each loop until $i > 3.
  2. Step 2: Determine output each iteration

    Outputs '1 ', then '2 ', then '3 '. Loop stops after $i becomes 4.
  3. Final Answer:

    1 2 3 -> Option A
  4. Quick Check:

    Prints 1 to 3 with spaces [OK]
Hint: Count from start to condition limit inclusive [OK]
Common Mistakes:
  • Including extra number after loop ends
  • Missing spaces in output
  • Confusing <= with < in condition
4.

Find the error in this PHP while loop code:

$i = 0;
while ($i < 3)
    echo $i;
    $i++;
medium
A. Condition syntax is wrong
B. echo statement is invalid
C. Variable $i is not initialized
D. Missing braces causes $i++ to run outside loop

Solution

  1. Step 1: Analyze loop structure without braces

    Without braces, only the first statement after while runs in loop.
  2. Step 2: Identify effect on $i++

    $i++ runs after loop ends, causing infinite loop because $i never increments inside loop.
  3. Final Answer:

    Missing braces causes $i++ to run outside loop -> Option D
  4. Quick Check:

    Braces needed to include all statements in loop [OK]
Hint: Use braces to group multiple statements in while loop [OK]
Common Mistakes:
  • Assuming indentation controls loop body
  • Forgetting to increment loop variable inside loop
  • Thinking condition syntax is incorrect
5.

You want to print all even numbers from 2 to 10 using a while loop in PHP. Which code correctly does this?

?
hard
A. $i = 2; while ($i <= 10) { echo $i . ' '; $i += 2; }
B. $i = 1; while ($i <= 10) { if ($i % 2 == 1) echo $i . ' '; $i++; }
C. $i = 2; while ($i < 10) { echo $i . ' '; $i += 2; }
D. $i = 0; while ($i <= 10) { echo $i . ' '; $i += 2; }

Solution

  1. Step 1: Identify correct start and condition

    Start at 2 and include 10, so condition is $i <= 10.
  2. Step 2: Check increment and output

    Increment by 2 to get even numbers only, and echo with space.
  3. Step 3: Compare options

    $i = 2; while ($i <= 10) { echo $i . ' '; $i += 2; } matches all criteria exactly. $i = 1; while ($i <= 10) { if ($i % 2 == 1) echo $i . ' '; $i++; } prints odd numbers: 1 3 5 7 9. $i = 2; while ($i < 10) { echo $i . ' '; $i += 2; } misses 10. $i = 0; while ($i <= 10) { echo $i . ' '; $i += 2; } starts at 0, which is not requested.
  4. Final Answer:

    $i = 2; while ($i <= 10) { echo $i . ' '; $i += 2; } -> Option A
  5. Quick Check:

    Start=2, end=10, step=2 [OK]
Hint: Start at 2, increment by 2, stop at 10 inclusive [OK]
Common Mistakes:
  • Starting at 0 or 1 instead of 2
  • Using < instead of <= to exclude 10
  • Not incrementing by 2 to get even numbers
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