CachingIterator::offsetSet

(PHP 5 >= 5.2.0)

CachingIterator::offsetSetThe offsetSet purpose

Description

public void CachingIterator::offsetSet ( string $index , string $newval )
Warning

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

Parameters

index

The index of the element to be set.

newval

The new value for the index.

Return Values

No value is returned.

Коментарии

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(01);

        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 cache
array (
  0 => 'a',
  1 => 'b',
)

The cache
array (
  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 cache
array (
  22 => 'manual entry',
)
cache offset '22' exists
2019-12-16 05:23:12
http://php5.kiev.ua/manual/ru/cachingiterator.offsetset.html

    Поддержать сайт на родительском проекте КГБ