Propel 2 API
Class

Propel\Runtime\Collection\OnDemandCollection

class OnDemandCollection extends Collection

Class for iterating over a statement and returning one Propel object at a time

Methods

array getData()

Get the data in the collection

from Collection
setData(array $data)

Set the data in the collection

from Collection
integer getPosition()

Gets the position of the internal pointer This position can be later used in seek()

from Collection
mixed getFirst()

Move the internal pointer to the beginning of the list And get the first element in the collection

from Collection
boolean isFirst()

Check whether the internal pointer is at the beginning of the list

from Collection
mixed getPrevious()

Move the internal pointer backward And get the previous element in the collection

from Collection
mixed getCurrent()

Get the current element in the collection

from Collection
mixed getNext()

Move the internal pointer forward And get the next element in the collection

from Collection
mixed getLast()

Move the internal pointer to the end of the list And get the last element in the collection

from Collection
boolean isLast()

Check whether the internal pointer is at the end of the list

from Collection
boolean isEmpty()

Check if the collection is empty

from Collection
boolean isOdd()

Check if the current index is an odd integer

from Collection
boolean isEven()

Check if the current index is an even integer

from Collection
mixed get(mixed $key)

Get an element from its key Alias for ArrayObject::offsetGet()

from Collection
mixed pop()

Pops an element off the end of the collection

from Collection
mixed shift()

Pops an element off the beginning of the collection

from Collection
integer prepend(mixed $value)

Prepend one or more elements to the beginning of the collection

set(mixed $key, mixed $value)

Add an element to the collection with the given key Alias for ArrayObject::offsetSet()

from Collection
mixed remove(mixed $key)

Removes a specified collection element Alias for ArrayObject::offsetUnset()

from Collection
array clear()

Clears the collection

from Collection
boolean contains(mixed $element)

Whether or not this collection contains a specified element

from Collection
mixed search(mixed $element)

Search an element in the collection

from Collection
Collection diff(Collection $collection)

Returns an array of objects present in the collection that are not presents in the given collection.

from Collection
string serialize()

unserialize(string $data)

OnDemandIterator getIterator()

ArrayIterator getInternalIterator()

from Collection
clearIterator()

Clear the internal Iterator.

from Collection
setModel(string $model)

Set the model of the elements in the collection

from Collection
string getModel()

Get the model of the elements in the collection

from Collection
string getFullyQualifiedModel()

Get the model of the elements in the collection

from Collection
getTableMapClass()

from Collection
setFormatter(AbstractFormatter $formatter)

from Collection
AbstractFormatter getFormatter()

from Collection
ConnectionInterface getWriteConnection()

Get a write connection object for the database containing the elements of the collection

from Collection
BaseObject importFrom(mixed $parser, string $data)

Populate the current collection from a string, using a given parser format <code> $coll = new ObjectCollection(); $coll->setModel('Book'); $coll->importFrom('JSON', '{{"Id":9012,"Title":"Don Juan","ISBN":"0140422161","Price":12.99,"PublisherId":1234,"AuthorId":5678}}'); </code>

from Collection
string exportTo(mixed $parser, boolean $usePrefix = true, boolean $includeLazyLoadColumns = true)

Export the current collection to a string, using a given parser format <code> $books = BookQuery::create()->find(); echo $book->exportTo('JSON'); => {{"Id":9012,"Title":"Don Juan","ISBN":"0140422161","Price":12.99,"PublisherId":1234,"AuthorId":5678}}'); </code>

array|string __call(string $name, mixed $params)

Catches calls to undefined methods.

from Collection
string __toString()

Returns a string representation of the current collection.

from Collection
__clone()

Creates clones of the containing data.

from Collection
Collection fromXML(string $data)

Populate the collection from an XML string

from Collection
Collection fromYAML(string $data)

Populate the collection from a YAML string

from Collection
Collection fromJSON(string $data)

Populate the collection from a JSON string

from Collection
Collection fromCSV(string $data)

Populate the collection from a CSV string

from Collection
string toXML(boolean $usePrefix, boolean $includeLazyLoadColumns)

Export the collection to an XML string

from Collection
string toYAML(boolean $usePrefix, boolean $includeLazyLoadColumns)

Export the collection to a YAML string

from Collection
string toJSON(boolean $usePrefix, boolean $includeLazyLoadColumns)

Export the collection to a JSON string

from Collection
string toCSV(boolean $usePrefix, boolean $includeLazyLoadColumns)

Export the collection to a CSV string

from Collection
initIterator(AbstractFormatter $formatter, DataFetcherInterface $dataFetcher)

array toArray(string $keyColumn = null, boolean $usePrefix = false, string $keyType = TableMap::TYPE_PHPNAME, boolean $includeLazyLoadColumns = true, array $alreadyDumpedObjects = array())

Get an array representation of the collection Each object is turned into an array and the result is returned

fromArray(array $arr)

Populates the collection from an array Each object is populated from an array and the result is stored Does not empty the collection before adding the data from the array

boolean offsetExists(integer $offset)

mixed offsetGet(integer $offset)

offsetSet(integer $offset, mixed $value)

offsetUnset(integer $offset)

integer count()

Returns the number of rows in the resultset Warning: this number is inaccurate for most databases.

append($value)

asort()

exchangeArray($input)

getArrayCopy()

getFlags()

ksort()

natcasesort()

natsort()

setFlags($flags)

uasort($cmp_function)

uksort($cmp_function)

Details

in Collection at line 70
public array getData()

Get the data in the collection

Return Value

array

in Collection at line 80
public setData(array $data)

Set the data in the collection

Parameters

array $data

in Collection at line 91
public integer getPosition()

Gets the position of the internal pointer This position can be later used in seek()

Return Value

integer

in Collection at line 102
public mixed getFirst()

Move the internal pointer to the beginning of the list And get the first element in the collection

Return Value

mixed

in Collection at line 114
public boolean isFirst()

Check whether the internal pointer is at the beginning of the list

Return Value

boolean

in Collection at line 125
public mixed getPrevious()

Move the internal pointer backward And get the previous element in the collection

Return Value

mixed

in Collection at line 141
public mixed getCurrent()

Get the current element in the collection

Return Value

mixed

in Collection at line 152
public mixed getNext()

Move the internal pointer forward And get the next element in the collection

Return Value

mixed

in Collection at line 165
public mixed getLast()

Move the internal pointer to the end of the list And get the last element in the collection

Return Value

mixed

in Collection at line 181
public boolean isLast()

Check whether the internal pointer is at the end of the list

Return Value

boolean

in Collection at line 198
public boolean isEmpty()

Check if the collection is empty

Return Value

boolean

in Collection at line 208
public boolean isOdd()

Check if the current index is an odd integer

Return Value

boolean

in Collection at line 218
public boolean isEven()

Check if the current index is an even integer

Return Value

boolean

in Collection at line 230
public mixed get(mixed $key)

Get an element from its key Alias for ArrayObject::offsetGet()

Parameters

mixed $key

Return Value

mixed The element

in Collection at line 244
public mixed pop()

Pops an element off the end of the collection

Return Value

mixed The popped element

in Collection at line 262
public mixed shift()

Pops an element off the beginning of the collection

Return Value

mixed The popped element

at line 209
public integer prepend(mixed $value)

Prepend one or more elements to the beginning of the collection

Parameters

mixed $value the element to prepend

Return Value

integer The number of new elements in the array

in Collection at line 297
public set(mixed $key, mixed $value)

Add an element to the collection with the given key Alias for ArrayObject::offsetSet()

Parameters

mixed $key
mixed $value

in Collection at line 309
public mixed remove(mixed $key)

Removes a specified collection element Alias for ArrayObject::offsetUnset()

Parameters

mixed $key

Return Value

mixed The removed element

in Collection at line 323
public array clear()

Clears the collection

Return Value

array The previous collection

in Collection at line 334
public boolean contains(mixed $element)

Whether or not this collection contains a specified element

Parameters

mixed $element

Return Value

boolean

Search an element in the collection

Parameters

mixed $element

Return Value

mixed Returns the key for the element if it is found in the collection, FALSE otherwise

in Collection at line 357
public Collection diff(Collection $collection)

Returns an array of objects present in the collection that are not presents in the given collection.

Parameters

Collection $collection A Propel collection.

Return Value

Collection An array of Propel objects from the collection that are not presents in the given collection.

at line 175
public string serialize()

Return Value

string

Exceptions

PropelException

at line 184
public unserialize(string $data)

Parameters

string $data

Exceptions

PropelException

at line 113
public OnDemandIterator getIterator()

Return Value

OnDemandIterator

in Collection at line 414
public ArrayIterator getInternalIterator()

Return Value

ArrayIterator

in Collection at line 429
public clearIterator()

Clear the internal Iterator.

PHP 5.3 doesn't know how to free a Collection object if it has an attached
Iterator, so this must be done manually to avoid memory leaks.

See also

http://www.propelorm.org/ticket/1232

in Collection at line 441
public setModel(string $model)

Set the model of the elements in the collection

Parameters

string $model Name of the Propel object classes stored in the collection

in Collection at line 456
public string getModel()

Get the model of the elements in the collection

Return Value

string Name of the Propel object class stored in the collection

in Collection at line 466
public string getFullyQualifiedModel()

Get the model of the elements in the collection

Return Value

string Fully qualified Name of the Propel object class stored in the collection

in Collection at line 471
public getTableMapClass()

in Collection at line 485
public setFormatter(AbstractFormatter $formatter)

Parameters

AbstractFormatter $formatter

in Collection at line 493
public AbstractFormatter getFormatter()

Return Value

AbstractFormatter

in Collection at line 503
public ConnectionInterface getWriteConnection()

Get a write connection object for the database containing the elements of the collection

Return Value

ConnectionInterface A ConnectionInterface connection object

in Collection at line 523
public BaseObject importFrom(mixed $parser, string $data)

Populate the current collection from a string, using a given parser format <code> $coll = new ObjectCollection(); $coll->setModel('Book'); $coll->importFrom('JSON', '{{"Id":9012,"Title":"Don Juan","ISBN":"0140422161","Price":12.99,"PublisherId":1234,"AuthorId":5678}}'); </code>

Parameters

mixed $parser A AbstractParser instance, or a format name ('XML', 'YAML', 'JSON', 'CSV')
string $data The source data to import from

Return Value

BaseObject The current object, for fluid interface

at line 267
public string exportTo(mixed $parser, boolean $usePrefix = true, boolean $includeLazyLoadColumns = true)

Export the current collection to a string, using a given parser format <code> $books = BookQuery::create()->find(); echo $book->exportTo('JSON'); => {{"Id":9012,"Title":"Don Juan","ISBN":"0140422161","Price":12.99,"PublisherId":1234,"AuthorId":5678}}'); </code>

A OnDemandCollection cannot be exported. Any attempt will result in a PropelException being thrown.

Parameters

mixed $parser A AbstractParser instance, or a format name ('XML', 'YAML', 'JSON', 'CSV')
boolean $usePrefix (optional) If true, the returned element keys will be prefixed with the model class name ('Article_0', 'Article_1', etc). Defaults to TRUE. Not supported by ArrayCollection, as ArrayFormatter has already created the array used here with integers as keys.
boolean $includeLazyLoadColumns (optional) Whether to include lazy load(ed) columns. Defaults to TRUE. Not supported by ArrayCollection, as ArrayFormatter has already included lazy-load columns in the array used here.

Return Value

string The exported data

in Collection at line 572
public array|string __call(string $name, mixed $params)

Catches calls to undefined methods.

Provides magic import/export method support (fromXML()/toXML(), fromYAML()/toYAML(), etc.).
Allows to define default __call() behavior if you use a custom BaseObject

Parameters

string $name
mixed $params

Return Value

array|string

in Collection at line 596
public string __toString()

Returns a string representation of the current collection.

Based on the string representation of the underlying objects, defined in
the TableMap::DEFAULT_STRING_FORMAT constant

Return Value

string

in Collection at line 604
public __clone()

Creates clones of the containing data.

in Collection at line 39
Collection fromXML(string $data)

Populate the collection from an XML string

Parameters

string $data

Return Value

Collection

in Collection at line 39
Collection fromYAML(string $data)

Populate the collection from a YAML string

Parameters

string $data

Return Value

Collection

in Collection at line 39
Collection fromJSON(string $data)

Populate the collection from a JSON string

Parameters

string $data

Return Value

Collection

in Collection at line 39
Collection fromCSV(string $data)

Populate the collection from a CSV string

Parameters

string $data

Return Value

Collection

in Collection at line 39
string toXML(boolean $usePrefix, boolean $includeLazyLoadColumns)

Export the collection to an XML string

Parameters

boolean $usePrefix
boolean $includeLazyLoadColumns

Return Value

string

in Collection at line 39
string toYAML(boolean $usePrefix, boolean $includeLazyLoadColumns)

Export the collection to a YAML string

Parameters

boolean $usePrefix
boolean $includeLazyLoadColumns

Return Value

string

in Collection at line 39
string toJSON(boolean $usePrefix, boolean $includeLazyLoadColumns)

Export the collection to a JSON string

Parameters

boolean $usePrefix
boolean $includeLazyLoadColumns

Return Value

string

in Collection at line 39
string toCSV(boolean $usePrefix, boolean $includeLazyLoadColumns)

Export the collection to a CSV string

Parameters

boolean $usePrefix
boolean $includeLazyLoadColumns

Return Value

string

at line 41
public initIterator(AbstractFormatter $formatter, DataFetcherInterface $dataFetcher)

Parameters

AbstractFormatter $formatter
DataFetcherInterface $dataFetcher

at line 81
public array toArray(string $keyColumn = null, boolean $usePrefix = false, string $keyType = TableMap::TYPE_PHPNAME, boolean $includeLazyLoadColumns = true, array $alreadyDumpedObjects = array())

Get an array representation of the collection Each object is turned into an array and the result is returned

Parameters

string $keyColumn If null, the returned array uses an incremental index. Otherwise, the array is indexed using the specified column
boolean $usePrefix If true, the returned array prefixes keys with the model class name ('Article_0', 'Article_1', etc).
string $keyType (optional) One of the class type constants TableMap::TYPE_PHPNAME, TableMap::TYPE_STUDLYPHPNAME, TableMap::TYPE_COLNAME, TableMap::TYPE_FIELDNAME, TableMap::TYPE_NUM. Defaults to TableMap::TYPE_PHPNAME.
boolean $includeLazyLoadColumns (optional) Whether to include lazy loaded columns. Defaults to TRUE.
array $alreadyDumpedObjects List of objects to skip to avoid recursion <code> $bookCollection->toArray(); array( 0 => array('Id' => 123, 'Title' => 'War And Peace'), 1 => array('Id' => 456, 'Title' => 'Don Juan'), ) $bookCollection->toArray('Id'); array( 123 => array('Id' => 123, 'Title' => 'War And Peace'), 456 => array('Id' => 456, 'Title' => 'Don Juan'), ) $bookCollection->toArray(null, true); array( 'Book_0' => array('Id' => 123, 'Title' => 'War And Peace'), 'Book_1' => array('Id' => 456, 'Title' => 'Don Juan'), ) </code>

Return Value

array

at line 103
public fromArray(array $arr)

Populates the collection from an array Each object is populated from an array and the result is stored Does not empty the collection before adding the data from the array

Parameters

array $arr

at line 126
public boolean offsetExists(integer $offset)

Parameters

integer $offset

Return Value

boolean

Exceptions

PropelException

at line 141
public mixed offsetGet(integer $offset)

Parameters

integer $offset

Return Value

mixed

Exceptions

PropelException

at line 156
public offsetSet(integer $offset, mixed $value)

Parameters

integer $offset
mixed $value

Exceptions

ReadOnlyModelException

at line 165
public offsetUnset(integer $offset)

Parameters

integer $offset

Exceptions

ReadOnlyModelException

at line 197
public integer count()

Returns the number of rows in the resultset Warning: this number is inaccurate for most databases.

Do not rely on it for a portable application.

Return Value

integer Number of results

at line 204
public append($value)

Parameters

$value

at line 214
public asort()

at line 219
public exchangeArray($input)

Parameters

$input

at line 224
public getArrayCopy()

at line 229
public getFlags()

at line 234
public ksort()

at line 239
public natcasesort()

at line 244
public natsort()

at line 249
public setFlags($flags)

Parameters

$flags

at line 254
public uasort($cmp_function)

Parameters

$cmp_function

at line 259
public uksort($cmp_function)

Parameters

$cmp_function