3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Collection extends ArrayObject { protected $iterator; public function getIterator() { // Well, this is a heavy object to make, let's memoize it if (!isset($this->iterator)) { $this->iterator = new ArrayIterator($this); } return $this->iterator; } } gc_enable(); foreach (range(1, 50000) as $i) { $collection = new Collection(array( 'foo', 'bar' )); foreach ($collection as $item) { echo memory_get_usage() . "\n"; ob_flush(); } unset($collection); } echo "done\n";

preferences:
29.43 ms | 402 KiB | 5 Q