3v4l.org

run code in 300+ PHP versions simultaneously
<?php namespace Capstone\Container; class Registry { protected $map; /** * @param \arrayAccess|array|null $map */ function __construct( &$map = null ) { if( $map === null ) { $map = array(); } $this->map &= $map; } function set($key, $value){ $this->map[$key] = $value; } function setMany(array $map){ foreach($map as $key => $value){ $this->set($key, $value); } } function get($key){ if(array_key_exists($key, $this->map)){ return $this->map[$key]; } return null; } function has($key){ return array_key_exists($key, $this->map); } function length(){ return count($this->map); } function getIterator(){ return new \ArrayIterator($this->map); } } $bob = array('x' => 'y'); $bob_reg = new Registry($bob); $bob_reg->set('ted', 'bob'); print_r($bob);

preferences:
32.21 ms | 402 KiB | 5 Q