Класс BufferedIterator
Создаёт итератор из другого итератора, который будет хранить результаты внутреннего итератора в памяти, чтобы результаты не нужно было пересчитывать.
- IteratorIterator реализует Iterator, Traversable, OuterIterator
-
Cake\Collection\Collection реализует Cake\Collection\CollectionInterface, Serializable использует Cake\Collection\CollectionTrait
-
Cake\Collection\Iterator\BufferedIterator реализует Countable, Serializable
Краткое описание свойств
-
$_bufferprotectedКэш в памяти, содержащий результаты предыдущих итераторовSplDoublyLinkedList -
$_currentprotectedПоследняя запись, полученная из внутреннего итератораmixed -
$_finishedprotectedПризнак того, достиг ли внутренний итератор конца.boolean -
$_indexprotectedУказатель на номер следующей записи, которая должна быть полученаinteger -
$_keyprotectedПоследний ключ, полученный от внутреннего итератораmixed -
$_startedprotectedbooleanПризнак того, был ли уже вызван метод rewind внутреннего итератора
Краткое описание методов
- __construct() public
Сохраняет кэш результатов, возвращаемых внутренним итератором, в памяти.
- count() publicВозвращает количество элементов в этом наборе
- current() publicВозвращает текущую запись в итераторе
- key() publicВозвращает текущий ключ в итераторе
- next() publicПеремещает указатель итератора к следующему элементу
- rewind() publicПеремотка набора
- serialize() public
Возвращает строковое представление этого объекта, которое можно использовать для его восстановления
- unserialize() publicДесериализует переданную строку и восстанавливает экземпляр BufferedIterator
- valid() publicВозвращает, есть ли у итератора ещё элементы
Подробное описание методов
__construct()source public
__construct( array|Traversable $items )
Сохраняет кэш результатов, возвращаемых внутренним итератором, в памяти.
Параметры
- array|Traversable
$items - Элементы, которые нужно отфильтровать.
Исключения
InvalidArgumentExceptionЕсли передан неверный тип для элементов.
Переопределяет
Cake\Collection\Collection::__construct() count()source public
count( )
Возвращает количество элементов в этом наборе
Возвращает
integerИсключения
LogicExceptionПереопределяет
Cake\Collection\Collection::count() Реализация
Countable::count() current()source public
current( )
Возвращает текущую запись в итераторе
Возвращает
mixedПереопределяет
IteratorIterator::current() key()source public
key( )
Возвращает текущий ключ в итераторе
Возвращает
mixedПереопределяет
IteratorIterator::key() next()source public
next( )
Перемещает указатель итератора к следующему элементу
Переопределяет
IteratorIterator::next() serialize()source public
serialize( )
Возвращает строковое представление этого объекта, которое можно использовать для его восстановления
Возвращает
stringПереопределяет
Cake\Collection\Collection::serialize() Реализация
Serializable::serialize() unserialize()source public
unserialize( string $buffer )
Десериализует переданную строку и восстанавливает экземпляр BufferedIterator
Параметры
- string
$buffer - Десериализованный буферизованный итератор
Переопределяет
Cake\Collection\Collection::unserialize() Реализация
Serializable::unserialize() valid()source public
valid( )
Возвращает, есть ли у итератора ещё элементы
Возвращает
booleanПереопределяет
IteratorIterator::valid() Методы, унаследованные от Cake\Collection\Collection
__debugInfo()source public
__debugInfo( )
Возвращает массив, который можно использовать для описания внутреннего состояния этого объекта.
Возвращает
arrayМетоды, используемые из Cake\Collection\CollectionTrait
_unwrap()source public
_unwrap( )
append()source public
append( $items )
avg()source public
avg( $matcher null )
cartesianProduct()source public
cartesianProduct( callable $operation null , callable $filter null )
Возвращает
Cake\Collection\CollectionInterfacechunk()source public
chunk( $chunkSize )
chunkWithKeys()source public
chunkWithKeys( $chunkSize , $preserveKeys true )
combine()source public
combine( $keyPath , $valuePath , $groupPath null )
compile()source public
compile( $preserveKeys true )
contains()source public
contains( $value )
countBy()source public
countBy( $callback )
each()source public
each( callable $c )
every()source public
every( callable $c )
extract()source public
extract( $matcher )
first()source public
first( )
firstMatch()source public
firstMatch( array $conditions )
groupBy()source public
groupBy( $callback )
indexBy()source public
indexBy( $callback )
isEmpty()source public
isEmpty( )
jsonSerialize()source public
jsonSerialize( )
last()source public
last( )
listNested()source public
listNested( $dir 'desc' , $nestingKey 'children' )
Возвращает
Cake\Collection\Iterator\TreeIteratormatch()source public
match( array $conditions )
max()source public
max( $callback , $type SORT_NUMERIC )
median()source public
median( $matcher null )
min()source public
min( $callback , $type SORT_NUMERIC )
nest()source public
nest( $idPath , $parentPath , $nestingKey 'children' )
optimizeUnwrap()source protected
optimizeUnwrap( )
Распаковывает этот итератор и возвращает наиболее простой перебираемый объект, который можно использовать для извлечения данных
Возвращает
Traversable|arrayreduce()source public
reduce( callable $c , $zero null )
sample()source public
sample( $size 10 )
shuffle()source public
shuffle( )
skip()source public
skip( $howMany )
some()source public
some( callable $c )
sortBy()source public
sortBy( $callback , $dir SORT_DESC , $type SORT_NUMERIC )
stopWhen()source public
stopWhen( $condition )
Возвращает
Cake\Collection\Iterator\StoppableIteratorsumOf()source public
sumOf( $matcher null )
take()source public
take( $size 1 , $from 0 )
through()source public
through( callable $handler )
toArray()source public
toArray( $preserveKeys true )
toList()source public
toList( )
unfold()source public
unfold( callable $transformer null )
unwrap()source public
unwrap( )
zip()source public
zip( $items )
zipWith()source public
zipWith( $items , $callable )
Подробное описание свойств
$_startedsource
protected boolean
Указывает, был ли уже вызван метод rewind внутреннего итератора
false
© 2005–2017 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/3.4/class-Cake.Collection.Iterator.BufferedIterator.html