0 follower

Interface Yiisoft\Data\Reader\DataReaderInterface

ExtendsIteratorAggregate, Yiisoft\Data\Reader\CountableDataInterface, Yiisoft\Data\Reader\FilterableDataInterface, Yiisoft\Data\Reader\LimitableDataInterface, Yiisoft\Data\Reader\OffsetableDataInterface, Yiisoft\Data\Reader\SortableDataInterface
Implemented byYiisoft\Data\Reader\Iterable\IterableDataReader

Data reader is a data source that can do the following with data items:

  • Read
  • Skip a number of items from the beginning
  • Count
  • Sort
  • Filter
  • Iterate with foreach

Public Methods

Hide inherited methods

Method Description Defined By
count() Yiisoft\Data\Reader\CountableDataInterface
getFilter() Get current data reading criteria. Yiisoft\Data\Reader\FilterableDataInterface
getLimit() Get current limit. Yiisoft\Data\Reader\LimitableDataInterface
getOffset() Get current offset. Yiisoft\Data\Reader\OffsetableDataInterface
getSort() Get a current sorting criteria. Yiisoft\Data\Reader\SortableDataInterface
read() Get iterable for the data set. Yiisoft\Data\Reader\ReadableDataInterface
readOne() Get one item from the data set. Which item is returned is up to implementation. Yiisoft\Data\Reader\ReadableDataInterface
withFilter() Returns new instance with data reading criteria set. Yiisoft\Data\Reader\FilterableDataInterface
withLimit() Get a new instance with the limit set. Yiisoft\Data\Reader\LimitableDataInterface
withOffset() Get a new instance with an offset set. Yiisoft\Data\Reader\OffsetableDataInterface
withSort() Get a new instance with a sorting set. Yiisoft\Data\Reader\SortableDataInterface

Method Details

Hide inherited methods

count() public abstract method
public abstract integer count ( )
return integer

Number of items in the data.

                public function count(): int;

            
getFilter() public abstract method

Defined in: Yiisoft\Data\Reader\FilterableDataInterface::getFilter()

Get current data reading criteria.

public abstract Yiisoft\Data\Reader\FilterInterface getFilter ( )
return Yiisoft\Data\Reader\FilterInterface

Data reading criteria.

                public function getFilter(): FilterInterface;

            
getLimit() public abstract method
public abstract integer|null getLimit ( )
return integer|null

Limit. null means no limit.

                public function getLimit(): ?int;

            
getOffset() public abstract method
public abstract integer getOffset ( )
return integer

Offset.

                public function getOffset(): int;

            
getSort() public abstract method

Defined in: Yiisoft\Data\Reader\SortableDataInterface::getSort()

Get a current sorting criteria.

public abstract Yiisoft\Data\Reader\Sort|null getSort ( )
return Yiisoft\Data\Reader\Sort|null

Current sorting criteria or null for no sorting.

                public function getSort(): ?Sort;

            
read() public abstract method

Defined in: Yiisoft\Data\Reader\ReadableDataInterface::read()

Get iterable for the data set.

public abstract iterable read ( )
return iterable

Iterable for the data. Note that keys could be anything so you shouldn't rely on these.

                public function read(): iterable;

            
readOne() public abstract method

Defined in: Yiisoft\Data\Reader\ReadableDataInterface::readOne()

Get one item from the data set. Which item is returned is up to implementation.

Note that invoking this method doesn't impact the data set or its pointer.

public abstract array|object|null readOne ( )
return array|object|null

An item or null if there is none.

                public function readOne(): array|object|null;

            
withFilter() public abstract method

Defined in: Yiisoft\Data\Reader\FilterableDataInterface::withFilter()

Returns new instance with data reading criteria set.

public abstract Yiisoft\Data\Reader\DataReaderInterface withFilter ( Yiisoft\Data\Reader\FilterInterface $filter )
$filter Yiisoft\Data\Reader\FilterInterface

Data reading criteria.

return Yiisoft\Data\Reader\DataReaderInterface

New instance.

                public function withFilter(FilterInterface $filter): static;

            
withLimit() public abstract method

Defined in: Yiisoft\Data\Reader\LimitableDataInterface::withLimit()

Get a new instance with the limit set.

public abstract Yiisoft\Data\Reader\DataReaderInterface withLimit ( integer|null $limit )
$limit integer|null

Limit. null means no limit.

return Yiisoft\Data\Reader\DataReaderInterface

New instance.

throws InvalidArgumentException

If the limit is less than zero.

                public function withLimit(?int $limit): static;

            
withOffset() public abstract method

Defined in: Yiisoft\Data\Reader\OffsetableDataInterface::withOffset()

Get a new instance with an offset set.

public abstract $this withOffset ( integer $offset )
$offset integer

Offset.

return $this

New instance.

                public function withOffset(int $offset): static;

            
withSort() public abstract method

Defined in: Yiisoft\Data\Reader\SortableDataInterface::withSort()

Get a new instance with a sorting set.

public abstract Yiisoft\Data\Reader\DataReaderInterface withSort ( Yiisoft\Data\Reader\Sort|null $sort )
$sort Yiisoft\Data\Reader\Sort|null

Sorting criteria or null for no sorting.

return Yiisoft\Data\Reader\DataReaderInterface

New instance.

                public function withSort(?Sort $sort): static;