CachingIterator::offsetSet

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

CachingIterator::offsetSetThe offsetSet purpose

说明

public CachingIterator::offsetSet(string $key, mixed $value): void
警告

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

参数

key

The index of the element to be set.

value

The new value for the key.

返回值

没有返回值。

添加备注

用户贡献的备注 1 note

up
0
ddrake at dreamingmind dot com
5 years ago
offsetSet($index, $newval) will change an existing cache value or create a new cache entry<?php        $cache = new \CachingIterator(            new \ArrayIterator(['a', 'b', 'c', 'd']),            \CachingIterator::FULL_CACHE);        $shortRange = range(0, 1);        foreach ($shortRange as $index) {            $cache->next();        }        echo PHP_EOL . 'The cache' . PHP_EOL;        var_export($cache->getCache());        echo PHP_EOL;        echo $cache->offsetSet('0', 'manual change') . PHP_EOL;        echo $cache->offsetSet('3', 'manual entry') . PHP_EOL;?>The cachearray (  0 => 'a',  1 => 'b',)The cachearray (  0 => 'manual change',  1 => 'b',  3 => 'manual entry',)There is no requirement that the offset exist in the inner iterator, or that the offset exists in the cache.<?php        $cache = new \CachingIterator(            new \ArrayIterator([]),            \CachingIterator::FULL_CACHE);        echo $cache->offsetSet('22', 'manual entry') . PHP_EOL;        echo PHP_EOL . 'The cache' . PHP_EOL;        var_export($cache->getCache());        echo PHP_EOL;        print_r("cache offset '22' " .            ($cache->offsetExists('22') == 1                ? 'exists'                : "doesn't exist"            ) . PHP_EOL);?>The cachearray (  22 => 'manual entry',)cache offset '22' exists
To Top