CachingIterator::offsetExists

(PHP 5 >= 5.2.0, PHP 7, PHP 8)

CachingIterator::offsetExistsThe offsetExists purpose

Description

public CachingIterator::offsetExists(string $key): bool
Warning

This function is currently not documented; only its argument list is available.

Parameters

key

The index being checked.

Return Values

Returns true if an entry referenced by the offset exists, false otherwise.

add a note add a note

User Contributed Notes 1 note

up
0
ddrake at dreamingmind dot com
4 years ago
offsetExists($index) examines the cache, not the inner or outer iterator.

<?php
        $cache
= new \CachingIterator(
            new \
ArrayIterator(['a', 'b', 'c', 'd']),
            \
CachingIterator::FULL_CACHE);

       
$shortRange = range(0, 1);
       
$fullRange = range(0, 3);

        foreach (
$shortRange as $index) {
           
$cache->next();
        }

        echo
PHP_EOL . 'The cache' . PHP_EOL;
       
var_export($cache->getCache());
        echo
PHP_EOL;

        foreach (
$fullRange as $offset) {
           
print_r("cache offset '$offset' " .
                (
$cache->offsetExists("$offset") == 1
                   
? 'exists'
                   
: "doesn't exist"
               
) . PHP_EOL);
        }
?>

The cache
array (
  0 => 'a',
  1 => 'b',
)
cache offset '0' exists
cache offset '1' exists
cache offset '2' doesn't exist
cache offset '3' doesn't exist
To Top