useIdAsKey = $useIdAsKey; } #[ReturnTypeWillChange] public function key() { if (!$this->useIdAsKey) { return parent::key(); } $current = $this->current(); if (!isset($current->_id) || (is_object($current->_id) && !$current->_id instanceof ObjectID)) { return parent::key(); } return (string) $current->_id; } }