value] pair if ($flags & self::ITERATOR_GET_BOTH) { for (end($array); ($key = key($array)) !== null; prev($array)) { yield $key => current($array); } return; } // iterate only key if ($flags & self::ITERATOR_GET_KEY) { for (end($array); ($key = key($array)) !== null; prev($array)) { yield $key; } return; } // iterate only value for (end($array); key($array) !== null; prev($array)) { yield current($array); } } }