CachingIterator::offsetExists

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

CachingIterator::offsetExistsThe offsetExists purpose

说明

public CachingIterator::offsetExists ( mixed $index ) : void
Warning

本函数还未编写文档,仅有参数列表。

参数

index

The index being checked.

返回值

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

User Contributed Notes

ddrake at dreamingmind dot com 16-Dec-2019 03:07
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