Class yii\mongodb\file\Cursor
Inheritance | yii\mongodb\file\Cursor » IteratorIterator |
---|---|
Implements | Countable |
Available since extension's version | 2.1 |
Source Code | https://github.com/yiisoft/yii2-mongodb/blob/master/src/file/Cursor.php |
Cursor is a wrapper around \MongoDB\Driver\Cursor, which allows returning of the record with yii\mongodb\file\Download instance attached.
Public Properties
Property | Type | Description | Defined By |
---|---|---|---|
$collection | yii\mongodb\file\Collection | Related GridFS collection instance. | yii\mongodb\file\Cursor |
Public Methods
Method | Description | Defined By |
---|---|---|
__call() | PHP magic method, which is invoked on attempt of invocation not existing method. | yii\mongodb\file\Cursor |
__construct() | Constructor. | yii\mongodb\file\Cursor |
__get() | PHP magic method, which is invoked on attempt of getting not existing property. | yii\mongodb\file\Cursor |
__isset() | PHP magic method, which is invoked on attempt of checking if a property is set. | yii\mongodb\file\Cursor |
__set() | PHP magic method, which is invoked on attempt of setting not existing property. | yii\mongodb\file\Cursor |
__unset() | PHP magic method, which is invoked on attempt of unsetting of property. | yii\mongodb\file\Cursor |
count() | Count elements of this cursor. | yii\mongodb\file\Cursor |
current() | Return the current element This method is required by the interface Iterator. | yii\mongodb\file\Cursor |
getId() | Returns the ID for this cursor. | yii\mongodb\file\Cursor |
getInnerIterator() | yii\mongodb\file\Cursor | |
setTypeMap() | Sets a type map to use for BSON unserialization. | yii\mongodb\file\Cursor |
toArray() | Returns an array containing all results for this cursor | yii\mongodb\file\Cursor |
Property Details
Related GridFS collection instance.
Method Details
PHP magic method, which is invoked on attempt of invocation not existing method.
It redirects method call to inner iterator.
public mixed __call ( $name, $arguments ) | ||
$name | string |
Method name. |
$arguments | array |
Method arguments |
return | mixed |
Method result. |
---|
public function __call($name, $arguments)
{
return call_user_func_array([$this->getInnerIterator(), $name], $arguments);
}
Constructor.
public void __construct ( $collection, $cursor ) | ||
$collection | yii\mongodb\file\Collection | |
$cursor | \MongoDB\Driver\Cursor |
public function __construct($collection, $cursor)
{
$this->collection = $collection;
parent::__construct($cursor);
}
PHP magic method, which is invoked on attempt of getting not existing property.
It returns value from the inner iterator.
public mixed __get ( $name ) | ||
$name | string |
Field name. |
return | mixed |
Field value. |
---|
public function __get($name)
{
return $this->getInnerIterator()->{$name};
}
PHP magic method, which is invoked on attempt of checking if a property is set.
public boolean __isset ( $name ) | ||
$name | string |
Field name. |
return | boolean |
Whether field exists or not. |
---|
public function __isset($name)
{
$cursor = $this->getInnerIterator();
return isset($cursor->$name);
}
PHP magic method, which is invoked on attempt of setting not existing property.
It passes value to the inner iterator.
public void __set ( $name, $value ) | ||
$name | string |
Field name. |
$value | mixed |
Field value. |
public function __set($name, $value)
{
$this->getInnerIterator()->{$name} = $value;
}
PHP magic method, which is invoked on attempt of unsetting of property.
public void __unset ( $name ) | ||
$name | string |
Field name. |
public function __unset($name)
{
$cursor = $this->getInnerIterator();
unset($cursor->$name);
}
Count elements of this cursor.
This method is required by the interface Countable.
public integer count ( ) | ||
return | integer |
Elements count. |
---|
#[\ReturnTypeWillChange]
public function count()
{
return count($this->cursor);
}
Return the current element This method is required by the interface Iterator.
public mixed current ( ) | ||
return | mixed |
Current row |
---|
#[\ReturnTypeWillChange]
public function current()
{
$value = parent::current();
if (!isset($value['file'])) {
$value['file'] = $this->collection->createDownload(array_intersect_key($value, ['_id' => true, 'filename' => true, 'length' => true, 'chunkSize' => true]));
}
return $value;
}
Returns the ID for this cursor.
public \MongoDB\Driver\CursorId getId ( ) | ||
return | \MongoDB\Driver\CursorId |
Cursor ID. |
---|
public function getId()
{
return $this->getInnerIterator()->getId();
}
public \MongoDB\Driver\Cursor getInnerIterator ( ) | ||
return | \MongoDB\Driver\Cursor |
---|
Sets a type map to use for BSON unserialization.
public void setTypeMap ( $typemap ) | ||
$typemap | array |
Type map. |
public function setTypeMap($typemap)
{
$this->getInnerIterator()->setTypeMap($typemap);
}