Creare Memory Leak con PHP

(Troppo) Spesso quando uno dei nostri server web (Apache) ha problemi il ditino viene puntato sugli sviluppatori imputando alle loro applicazioni fantomatici memory leak.
Convinto che la ragione sia sempre nel mezzo ho deciso di scrivere un piccolo script PHP che volutamente perde memoria.

Lo script è molto banale e consente di perdere un numero arbitrario di MB di Memoria.

<?php
define
('MEMORY_LOST', 10); //Memory that will be lost (MB)
define('VERBOSE', TRUE); // Debug?
define('DATO', 'DATO+DATODATO+DATODATO+DATODATO+DATODATO+DATO');

header('Content-type: text/plain');
printf("START: ON STARTUP YOU USE %s MB \n", (memory_get_usage()/1048576) );

$play = TRUE;
while (
$play) {
 
$foo = new Foo();
  unset(
$foo);
 
  if(
VERBOSE){
    echo
round(memory_get_usage()/1048576 , 3) . "\n";
  }
 
  if( (
memory_get_usage()/1048576) > MEMORY_LOST ){
  
$play = FALSE;
  }
}
printf('STOP: YOU HAVE LOST %s MB', (memory_get_usage()/1048576) );

class

Foo {
  function
__construct() {
   
$this->data = array_pad(array(),100, DATO );
   
$this->bar = new Bar($this);
  }
}

class

Bar {
  function
__construct($foo = null) {
   
$this->data = array_pad(array(),2000, DATO );
   
$this->foo = $foo;
  }
}
?>

Con questo script penso che sia più facile vedere gli effetti del caso poco probabile che ci mangiamo mega di memoria!!