Index

iCollection

MMO\core\interfaces · 1 symbol · generated 30 Sep 2026

interface

iCollection

iCollection.php:15

A set of entities of one class, usually belonging to a repository. Collection implements it: this interface declares everything the framework relies on, so code typed against it works with any collection.

interface MMO\core\interfaces\iCollection extends Countable, JsonSerializable, MMO\core\interfaces\iIdentifiable
Namespace
MMO\core\interfaces
Implements
Countable, JsonSerializable, iIdentifiable
It holds stored entities -- \MMO\core\entities\Entity, never an EmbeddedEntity.

Methods18

addEntity($entity)

abstractiCollection.php:31
abstract function addEntity(MMO\core\interfaces\iEntity $entity): MMO\core\interfaces\iEntity
$entityiEntity
returnsiEntity$entity, now in this collection

executeQuery($query, $opts)

abstractiCollection.php:46
abstract function executeQuery(MMO\core\entities\Query $query, array $opts = []): Generator
$queryQuery
$opts = []array
returnsGenerator

find($filter, $fields, $sort, $limit, $offset, $options)

abstractiCollection.php:48
abstract function find( MMO\core\interfaces\iFilter|array|string $filter, array $fields = [], array $sort = [], ?int $limit = null, ?int $offset = null, array $options = [] ): array
$filteriFilter | array | string
$fields = []array
$sort = []array
$limit = nullnull | int
$offset = nullnull | int
$options = []array
returnsarray

findOne($filter, $fields, $sort, $offset, $options)

abstractiCollection.php:50
abstract function findOne( MMO\core\interfaces\iFilter|array|string $filter, array $fields = [], array $sort = [], ?int $offset = null, array $options = [] ): ?MMO\core\interfaces\iEntity
$filteriFilter | array | string
$fields = []array
$sort = []array
$offset = nullnull | int
$options = []array
returnsnull | iEntity

getById($id, $find)

abstractiCollection.php:38
abstract function getById(string $id, bool $find = true): ?MMO\core\interfaces\iEntity
$idstring
$find = trueboolif it is not loaded yet, ask the repository
returnsnull | iEntity

getEntities()

abstractiCollection.php:28
abstract function getEntities(): array
returnsarraythe entities loaded so far

getEntityClass()

abstractiCollection.php:20
abstract function getEntityClass(): string
returnsstringthe class of its entities

getOrCreateEntity($data, $local, $coerce)

abstractiCollection.php:42
abstract function getOrCreateEntity(array $data = [], bool $local = false, bool $coerce = true): MMO\core\interfaces\iEntity
$data = []array
$local = falsebool
$coerce = truebool
returnsiEntitythe entity matching $data on its @unique properties, or a new one

getSchema()

abstractiCollection.php:23
abstract function getSchema(): MMO\core\interfaces\iSchema
returnsiSchemathe schema of its entities

query($filter, $fields, $sort, $limit, $offset, $options)

abstractiCollection.php:45
abstract function query( MMO\core\interfaces\iFilter|array|string $filter = [], array $fields = [], array $sort = [], ?int $limit = null, ?int $offset = null, array $options = [] ): MMO\core\entities\Query
$filter = []iFilter | array | string
$fields = []array
$sort = []array
$limit = nullnull | int
$offset = nullnull | int
$options = []array
returnsQuery

removeEntity($entity)

abstractiCollection.php:33
abstract function removeEntity(MMO\core\interfaces\iEntity|string|int $entity): ?MMO\core\interfaces\iEntity
$entityiEntity | string | int
returnsnull | iEntitythe entity removed, if it was there
Inherited members (3)
MethodsDeclared byDescription
count()Countable
jsonSerialize()JsonSerializable
uid()iIdentifiableGet the unique identifier