extends abstract class Phalcon\Di\Injectable
implements Phalcon\Events\EventsAwareInterface, Phalcon\Di\InjectionAwareInterface, Phalcon\Mvc\Model\ResultsetInterface, Iterator, Traversable, SeekableIterator, Countable, ArrayAccess, Serializable, JsonSerializable
This component allows to Phalcon\Mvc\Model returns large resulsets with the minimum memory consumption Resulsets can be traversed using a standard foreach or a while statement. If a resultset is serialized it will dump all the rows into a big array. Then unserialize will retrieve the rows as they were before serializing.
<?php
//Using a standard foreach
$robots = Robots::find(array("type='virtual'", "order" => "name"));
foreach ($robots as $robot) {
echo $robot->name, "\n";
}
//Using a while
$robots = Robots::find(array("type='virtual'", "order" => "name"));
$robots->rewind();
while ($robots->valid()) {
$robot = $robots->current();
echo $robot->name, "\n";
$robots->next();
}
integer TYPE_RESULT_FULL
integer TYPE_RESULT_PARTIAL
integer HYDRATE_RECORDS
integer HYDRATE_OBJECTS
integer HYDRATE_ARRAYS
public next ()
Moves cursor to next row in the resultset
public int key ()
Gets pointer number of active row in the resultset
public rewind ()
Rewinds resultset to its beginning
public seek (int $position)
Changes internal pointer to a specific position in the resultset
public int count ()
Counts how many rows are in the resultset
public boolean offsetExists (unknown $property)
Checks whether offset exists in the resultset
public Phalcon\Mvc\ModelInterface offsetGet (unknown $property)
Gets row in a specific position of the resultset
public offsetSet (unknown $property, Phalcon\Mvc\ModelInterface $value)
Resultsets cannot be changed. It has only been implemented to meet the definition of the ArrayAccess interface
public offsetUnset (unknown $property)
Resultsets cannot be changed. It has only been implemented to meet the definition of the ArrayAccess interface
public int getType ()
Returns the internal type of data retrieval that the resultset is using
public Phalcon\Mvc\ModelInterface getFirst ()
Get first row in the resultset
public Phalcon\Mvc\ModelInterface getLast ()
Get last row in the resultset
public Phalcon\Mvc\Model\Resultset setIsFresh (boolean $isFresh)
Set if the resultset is fresh or an old one cached
public boolean isFresh ()
Tell if the resultset if fresh or an old one cached
public Phalcon\Mvc\Model\Resultset setHydrateMode (int $hydrateMode)
Sets the hydration mode in the resultset
public int getHydrateMode ()
Returns the current hydration mode
public Phalcon\Cache\BackendInterface getCache ()
Returns the associated cache for the resultset
public Phalcon\Mvc\ModelInterface current ()
Returns current row in the resultset
public Phalcon\Mvc\Model\MessageInterface[] getMessages ()
Returns the error messages produced by a batch operation
public boolean delete ([Closure $conditionCallback])
Deletes every record in the resultset
public Phalcon\Mvc\Model [] filter (callback $filter)
Filters a resultset returning only those the developer requires
<?php
$filtered = $robots->filter(function($robot){
if ($robot->id < 3) {
return $robot;
}
});
public boolean update (array $data, [Closure $conditionCallback])
Updates every record in the resultset
public array jsonSerialize ()
Returns serialised model objects as array for json_encode. Calls jsonSerialize on each object if present
<?php
$robots = Robots::find();
echo json_encode($robots);
public setDI (Phalcon\DiInterface $dependencyInjector) inherited from Phalcon\Di\Injectable
Sets the dependency injector
public Phalcon\DiInterface getDI ([unknown $error], [unknown $notUseDefault]) inherited from Phalcon\Di\Injectable
Returns the internal dependency injector
public setEventsManager (Phalcon\Events\ManagerInterface $eventsManager) inherited from Phalcon\Di\Injectable
Sets the event manager
public Phalcon\Events\ManagerInterface getEventsManager () inherited from Phalcon\Di\Injectable
Returns the internal event manager
public boolean fireEvent (string $eventName, [mixed $data], [unknown $cancelable]) inherited from Phalcon\Di\Injectable
Fires an event, implicitly calls behaviors and listeners in the events manager are notified
public mixed fireEventCancel (string $eventName, [mixed $data], [unknown $cancelable]) inherited from Phalcon\Di\Injectable
Fires an event, can stop the event by returning to the false
public boolean hasService (string $name) inherited from Phalcon\Di\Injectable
Check whether the DI contains a service by a name
public Phalcon\Di\ServiceInterface setService (unknown $name) inherited from Phalcon\Di\Injectable
Sets a service from the DI
public object|null getService (unknown $name) inherited from Phalcon\Di\Injectable
Obtains a service from the DI
public mixed getResolveService (string $name, [array $args], [unknown $noerror], [unknown $noshared]) inherited from Phalcon\Di\Injectable
Resolves the service based on its configuration
public attachEvent (string $eventType, Closure $callback) inherited from Phalcon\Di\Injectable
Attach a listener to the events
public __get (unknown $property) inherited from Phalcon\Di\Injectable
Magic method __get
public __sleep () inherited from Phalcon\Di\Injectable
...
public __debugInfo () inherited from Phalcon\Di\Injectable
...
abstract public array toArray () inherited from Phalcon\Mvc\Model\ResultsetInterface
Returns a complete resultset as an array, if the resultset has a big number of rows it could consume more memory than currently it does.
abstract public valid () inherited from Iterator
...
abstract public serialize () inherited from Serializable
...
abstract public unserialize (unknown $serialized) inherited from Serializable
...