3v4l.org

run code in 300+ PHP versions simultaneously
<?php class WidgetCollection { private $widgetArray = []; public function addWidget(Widget $widget) { $this->widgetArray[spl_object_hash($widget)] = $widget; } public function removeWidget(Widget $widget) { unset($this->widgetArray[spl_object_hash($widget)]); } public function getEachWidget() { return array_values($this->widgetArray()); } } class Widget { } $widgetCollection = new WidgetCollection; $widgetCollection->addWidget($a = new Widget); $widgetCollection->addWidget($b = new Widget); $widgetCollection->addWidget($c = new Widget); var_dump($widgetCollection); $widgetCollection->removeWidget($b); var_dump($widgetCollection);

preferences:
45.58 ms | 402 KiB | 5 Q