CachingIterator::offsetSet
(PHP 5 >= 5.2.0)
CachingIterator::offsetSet — The 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.
- PHP Руководство
- Функции по категориям
- Индекс функций
- Справочник функций
- Другие базовые расширения
- Стандартная библиотека PHP (SPL)
- Итераторы
- Функция CachingIterator::__construct() - Строит новый объект CachingIterator для итератора
- Функция CachingIterator::count() - Возвращает число элементов в итераторе
- Функция CachingIterator::current() - Возвращает текущий элемент
- Функция CachingIterator::getCache() - Назначение getCache
- Функция CachingIterator::getFlags() - Получает используемые флаги
- Функция CachingIterator::getInnerIterator() - Возвращает внутренний итератор
- Функция CachingIterator::hasNext() - Проверяет, имеет ли внутренний итератор допустимый следующий элемент
- Функция CachingIterator::key() - Возвращает ключ для текущего элемента
- Функция CachingIterator::next() - Перемещает итератор к следующему элементу
- Функция CachingIterator::offsetExists() - Назначение offsetExists
- Функция CachingIterator::offsetGet() - Назначение offsetGet
- Функция CachingIterator::offsetSet() - Назначение offsetSet
- Функция CachingIterator::offsetUnset() - Назначение offsetUnset
- Функция CachingIterator::rewind() - Возвращает итератор в начало
- Функция CachingIterator::setFlags() - Назначение setFlags
- Функция CachingIterator::__toString() - Возвращает строковое представление текущего элемента
- Функция CachingIterator::valid() - Проверяет, является ли текущий элемент допустимым
Коментарии
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