Bird
Raised Fist0
PHPprogramming~5 mins

Script execution and memory reset in PHP - Time & Space Complexity

Choose your learning style10 modes available
Time Complexity: Script execution and memory reset
O(n)
Understanding Time Complexity

When a PHP script runs, it starts fresh each time. This means memory and variables reset with every run.

We want to understand how this reset affects the time it takes to run the script as input grows.

Scenario Under Consideration

Analyze the time complexity of the following code snippet.


<?php
function processData(array $data) {
    $sum = 0;
    foreach ($data as $value) {
        $sum += $value;
    }
    return $sum;
}

$input = range(1, 1000);
echo processData($input);
?>
    

This code sums all numbers in an array each time the script runs, starting fresh every time.

Identify Repeating Operations

Identify the loops, recursion, array traversals that repeat.

  • Primary operation: Looping through the array to add each number.
  • How many times: Once per script run, exactly as many times as there are items in the array.
How Execution Grows With Input

As the array gets bigger, the loop runs more times, so the work grows with the number of items.

Input Size (n)Approx. Operations
1010 additions
100100 additions
10001000 additions

Pattern observation: The work grows directly with the input size; double the input, double the work.

Final Time Complexity

Time Complexity: O(n)

This means the time to run the script grows in a straight line with the size of the input array.

Common Mistake

[X] Wrong: "Since the script resets memory each time, the time to run stays the same no matter the input size."

[OK] Correct: Even though memory resets, the script still has to do work for every item in the input each run, so bigger input means more work and more time.

Interview Connect

Understanding how script execution resets memory helps you explain how PHP handles each request fresh, which is key for writing efficient code that scales well.

Self-Check

"What if we changed the function to call itself recursively instead of using a loop? How would the time complexity change?"

Practice

(1/5)
1. What happens to variables in a PHP script after the script finishes running?
easy
A. Variables are saved permanently in the script file
B. Variables keep their values until the server restarts
C. All variables and memory are reset and cleared
D. Variables are shared with other scripts automatically

Solution

  1. Step 1: Understand PHP script execution

    PHP runs scripts from top to bottom each time the page loads.
  2. Step 2: Memory and variable reset after execution

    After the script finishes, all variables and memory used are cleared to keep the environment clean.
  3. Final Answer:

    All variables and memory are reset and cleared -> Option C
  4. Quick Check:

    PHP resets variables after script ends = C [OK]
Hint: Remember PHP resets memory after each script run [OK]
Common Mistakes:
  • Thinking variables keep values between page loads
  • Assuming variables save to the script file
  • Believing variables are shared across scripts automatically
2. Which of the following is the correct way to start a PHP script that resets variables each time it runs?
easy
A.
B.
C.
D. // PHP code here

Solution

  1. Step 1: Identify correct PHP tags

    PHP scripts start with to run properly.
  2. Step 2: Understand script resets

    Each time the script runs, variables reset automatically without extra commands.
  3. Final Answer:

    -> Option A
  4. Quick Check:

    Correct PHP tags = A [OK]
Hint: Use tags to start PHP scripts [OK]
Common Mistakes:
  • Using <script> tags which are for JavaScript
  • Trying to call reset() function which doesn't reset variables
  • Using incorrect <php> tags
3. Consider this PHP code run twice in a row (two separate page loads):
<?php
$counter = 0;
$counter++;
echo $counter;
?>

What will be the output each time the script runs?
medium
A. 1 then 1
B. 0 then 1
C. 1 then 2
D. 0 then 0

Solution

  1. Step 1: Analyze variable initialization

    Each time the script runs, $counter is set to 0 at the start.
  2. Step 2: Increment and output

    $counter++ increases $counter to 1, then echo prints 1 each time.
  3. Final Answer:

    1 then 1 -> Option A
  4. Quick Check:

    Variables reset each run, so output is 1 each time [OK]
Hint: Variables reset each run, so counter restarts at 0 [OK]
Common Mistakes:
  • Assuming $counter keeps incrementing across runs
  • Confusing pre-increment and post-increment
  • Thinking echo prints 0 first
4. You wrote this PHP code:
<?php
$sum = 10;
$sum += 5;
?>

But after refreshing the page, $sum is always 15. You want $sum to keep increasing by 5 each time the page loads. What is the problem?
medium
A. You need to use a loop to increase $sum
B. The += operator does not add values correctly
C. You forgot to declare $sum as global
D. PHP resets variables after each script run, so $sum starts at 10 every time

Solution

  1. Step 1: Understand variable reset behavior

    PHP clears all variables after each script finishes, so $sum resets to 10 every time.
  2. Step 2: Why $sum does not keep increasing

    Because $sum is reinitialized to 10 on each page load, adding 5 results in 15 always.
  3. Final Answer:

    PHP resets variables after each script run, so $sum starts at 10 every time -> Option D
  4. Quick Check:

    Variables reset each run = D [OK]
Hint: Variables reset each run; use sessions or files to keep values [OK]
Common Mistakes:
  • Thinking += operator is faulty
  • Assuming global declaration keeps value between runs
  • Believing loops affect variable persistence
5. You want to count how many times a PHP page has been loaded by visitors. Since PHP resets variables each run, which method should you use to keep the count across page loads?
hard
A. Declare the count variable as global inside the script
B. Store the count in a session or a file/database to persist data
C. Use a loop to increment the count variable inside the script
D. Reset the count variable to zero at the start of the script

Solution

  1. Step 1: Recognize PHP variable reset limitation

    PHP variables reset after each script run, so count cannot persist in normal variables.
  2. Step 2: Use persistent storage

    Sessions, files, or databases store data between page loads to keep count.
  3. Final Answer:

    Store the count in a session or a file/database to persist data -> Option B
  4. Quick Check:

    Persistent storage needed for count across runs = B [OK]
Hint: Use sessions or files to save data between page loads [OK]
Common Mistakes:
  • Thinking global variables keep values between runs
  • Trying to use loops for persistence
  • Resetting variables each time defeats counting
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