• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • CachingIterator::offsetSet()

    (PHP 5>=5.2.0,PHP 7)

    The offsetSet purpose

    说明

    publicCachingIterator::offsetSet(mixed $index,mixed $newval) : void
    Warning

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

    参数

    $index

    The index of the element to be set.

    $newval

    The new value for the$index.

    返回值

    没有返回值。

    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 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