Spec-Zone.ru › CakePHP 3.7

Класс ExtractIterator

Создаёт итератор из другого итератора, извлекающий запрашиваемый столбец или свойство на основе пути.

IteratorIterator реализует Iterator, Traversable, OuterIterator
Extended by Cake\Collection\Collection реализует Cake\Collection\CollectionInterface, Serializable использует Cake\Collection\CollectionTrait
Extended by Cake\Collection\Iterator\ExtractIterator
Пространство имён: Cake\Collection\Iterator
Расположение: Collection/Iterator/ExtractIterator.php

Краткое описание свойств

  • $_extractor protected
    callable

    Делегат, ответственный за извлечение одного значения для каждого элемента в коллекции.

Краткое описание методов

  • __construct() public

    Создаёт итератор, который будет возвращать запрашиваемое свойство для каждого значения в коллекции, выраженного в $path.

  • current() public

    Возвращает значение столбца, определённого в $path, или null, если путь не может быть пройден.

  • unwrap() public

Подробное описание методов

__construct()source public

__construct( array|Traversable $items , string $path )

Создаёт итератор, который будет возвращать запрашиваемое свойство для каждого значения в коллекции, выраженного в $path.

Пример:

Извлечь имя пользователя для всех комментариев в массиве:

$items = [
 ['comment' => ['body' => 'cool', 'user' => ['name' => 'Mark']],
 ['comment' => ['body' => 'very cool', 'user' => ['name' => 'Renan']]
];
$extractor = new ExtractIterator($items, 'comment.user.name'');

Параметры

array|Traversable $items
Список значений для итерирования
string $path

Строка с разделителем «точка», обозначающая путь для перехода внутри иерархии каждого значения для извлечения столбца.

Исключения

InvalidArgumentException
Если передан неверный тип для элементов.

Переопределяет

Cake\Collection\Collection::__construct()

current()source public

current( )

Возвращает значение столбца, определённого в $path, или null, если путь не может быть пройден.

Возвращает

mixed

Переопределяет

IteratorIterator::current()

unwrap()source public

unwrap( )

Здесь выполняется анализ строгости, чтобы полностью обойти логику итератора.

Возвращает

Iterator

Переопределяет

Cake\Collection\CollectionTrait::unwrap()

Методы, унаследованные от Cake\Collection\Collection

__debugInfo()source public

__debugInfo( )

Возвращает массив, который можно использовать для описания внутреннего состояния этого объекта.

Возвращает

array

count()source public

count( )

Возвращает количество элементов в коллекции.

Возвращает

integer

Реализация

Cake\Collection\CollectionInterface::count()

countKeys()source public

countKeys( )

Возвращает количество уникальных ключей в этом итераторе. То есть, количество элементов, которые будет содержать коллекция после вызова toArray()

Возвращает

integer

Реализация

Cake\Collection\CollectionInterface::countKeys()

serialize()source public

serialize( )

Возвращает строковое представление этого объекта, которое можно использовать для его восстановления.

Возвращает

string

Реализация

Serializable::serialize()

unserialize()source public

unserialize( string $collection )

Десериализует переданную строку и восстанавливает экземпляр коллекции.

Параметры

string $collection
Десериализованная коллекция

Реализация

Serializable::unserialize()

Методы, используемые из 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 )

buffered()source public

buffered( )

Возвращает

Cake\Collection\Iterator\BufferedIterator

cartesianProduct()source public

cartesianProduct( callable $operation = null , callable $filter = null )

Параметры

callable $operation необязательно null
Операция
callable $filter необязательно null
Фильтр

Возвращает

Cake\Collection\CollectionInterface

Исключения

LogicException

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

every()source public

every( callable $c )

extract()source public

extract( $matcher )

filter()source public

filter( callable $c = null )

Возвращает

Cake\Collection\Iterator\FilterIterator

first()source public

first( )

firstMatch()source public

firstMatch( array $conditions )

groupBy()source public

groupBy( $callback )

indexBy()source public

indexBy( $callback )

insert()source public

insert( $path , $values )

Возвращает

Cake\Collection\Iterator\InsertIterator

isEmpty()source public

isEmpty( )

jsonSerialize()source public

jsonSerialize( )

last()source public

last( )

lazy()source public

lazy( )

listNested()source public

listNested( $dir = 'desc' , $nestingKey = 'children' )

Возвращает

Cake\Collection\Iterator\TreeIterator

map()source public

map( callable $c )

Возвращает

Cake\Collection\Iterator\ReplaceIterator

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

Распаковывает этот итератор и возвращает простейший перебираемый объект, который может быть использован для извлечения данных

Возвращает

Traversable|array

prepend()source public

prepend( $items )

prependItem()source public

prependItem( $item , $key = null )

reduce()source public

reduce( callable $c , $zero = null )

reject()source public

reject( callable $c )

Возвращает

Cake\Collection\Iterator\FilterIterator

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

sumOf()source public

sumOf( $matcher = null )

take()source public

take( $size = 1 , $from = 0 )

takeLast()source public

takeLast( $howMany )

through()source public

through( callable $handler )

toArray()source public

toArray( $preserveKeys = true )
END_OF_DOCUMENT_MARKER

toList()source public

toList( )

transpose()source public

transpose( )

Возвращает

Cake\Collection\CollectionInterface

Вызывает исключение

LogicException

unfold()source public

unfold( callable $transformer = null )

zip()source public

zip( $items )

zipWith()source public

zipWith( $items , $callable )

Магические методы, унаследованные от Cake\Collection\CollectionInterface

cartesianProduct()

Подробное описание свойств

$_extractorsource

protected вызываемый объект

Вызываемый объект, отвечающий за извлечение одного значения для каждого элемента в коллекции.

© 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.7/class-Cake.Collection.Iterator.ExtractIterator.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API