Class FilterIterator
Creates a filtered iterator from another iterator. The filtering is done by passing a callback function to each of the elements and taking them out if it does not return true.
- IteratorIterator implements Iterator, Traversable, OuterIterator
- Cake\Collection\Collection implements Cake\Collection\CollectionInterface, Serializable uses Cake\Collection\CollectionTrait
- Cake\Collection\Iterator\FilterIterator
Properties summary
-
$_callback
protectedThe callback used to filter the elements in this collectioncallable
Method Summary
- __construct() public
Creates a filtered iterator using the callback to determine which items are accepted or rejected.
- unwrap() public
Method Detail
__construct()source public
__construct( Iterator $items , callable $callback )
Creates a filtered iterator using the callback to determine which items are accepted or rejected.
Each time the callback is executed it will receive the value of the element in the current iteration, the key of the element and the passed $items iterator as arguments, in that order.
Parameters
- Iterator
$items
- The items to be filtered.
- callable
$callback
- Callback.
Throws
InvalidArgumentExceptionIf passed incorrect type for items.
Overrides
Cake\Collection\Collection::__construct()
unwrap()source public
unwrap( )
We perform here some strictness analysis so that the iterator logic is bypassed entirely.
Returns
IteratorOverrides
Cake\Collection\CollectionTrait::unwrap()
Methods inherited from Cake\Collection\Collection
__debugInfo()source public
__debugInfo( )
Returns an array that can be used to describe the internal state of this object.
Returns
arraycount()source public
count( )
Returns the amount of elements in the collection.
Returns
integerImplementation of
Cake\Collection\CollectionInterface::count()
countKeys()source public
countKeys( )
Returns the number of unique keys in this iterator. This is, the number of elements the collection will contain after calling toArray()
Returns
integerImplementation of
Cake\Collection\CollectionInterface::countKeys()
serialize()source public
serialize( )
Returns a string representation of this object that can be used to reconstruct it
Returns
stringImplementation of
Serializable::serialize()
unserialize()source public
unserialize( string $collection )
Unserializes the passed string and rebuilds the Collection instance
Parameters
- string
$collection
- The serialized collection
Implementation of
Serializable::unserialize()
Methods used from Cake\Collection\CollectionTrait
_unwrap()source public
_unwrap( )
append()source public
append( $items )
appendItem()source public
appendItem( $item , $key = null )
avg()source public
avg( $matcher = null )
cartesianProduct()source public
cartesianProduct( callable $operation = null , callable $filter = null )
Returns
Cake\Collection\CollectionInterface
chunk()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' )
Returns
Cake\Collection\Iterator\TreeIterator
match()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( )
Unwraps this iterator and returns the simplest traversable that can be used for getting the data out
Returns
Traversable|arrayprepend()source public
prepend( $items )
prependItem()source public
prependItem( $item , $key = null )
reduce()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 )
sumOf()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 )
zip()source public
zip( $items )
zipWith()source public
zipWith( $items , $callable )
Properties detail
© 2005–present 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.6/class-Cake.Collection.Iterator.FilterIterator.html