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(); $base = memory_get_usage(); foreach (range(1, 250000) as $i) { $collection = new Collection(array( 'foo', 'bar' )); foreach ($collection as $item) { } unset($collection); gc_collect_cycles(); if ($i % 500 === 0) { var_dump(memory_get_usage() - $base); } }

preferences:
28.86 ms | 402 KiB | 5 Q