Elgg  Version 2.3
Public Member Functions | Public Attributes | List of all members
ElggBatch Class Reference
Inheritance diagram for ElggBatch:
Elgg\BatchResult

Public Member Functions

 __construct ($getter, $options, $callback=null, $chunk_size=25, $inc_offset=true)
 Batches operations on any elgg_get_*() or compatible function that supports an options array. More...
 
 reportIncompleteEntity (\stdClass $row)
 Tell the process that an entity was incomplete during a fetch. More...
 
 setIncrementOffset ($increment=true)
 Increment the offset from the original options array? Setting to false is required for callbacks that delete rows. More...
 
 rewind ()
 Implements Iterator. More...
 
 current ()
 {} More...
 
 key ()
 {} More...
 
 next ()
 {} More...
 
 valid ()
 {} More...
 
 count ()
 Count the total results available at this moment. More...
 
 __get ($name)
 Read a property. More...
 
 __set ($name, $value)
 Write a property. More...
 

Public Attributes

 $callbackResult = null
 

Detailed Description

Definition at line 73 of file ElggBatch.php.

Constructor & Destructor Documentation

ElggBatch::__construct (   $getter,
  $options,
  $callback = null,
  $chunk_size = 25,
  $inc_offset = true 
)

Batches operations on any elgg_get_*() or compatible function that supports an options array.

Instead of returning all objects in memory, it goes through $chunk_size objects, then requests more from the server. This avoids OOM errors.

Parameters
string$getterThe function used to get objects. Usually an elgg_get_*() function, but can be any valid PHP callback.
array$optionsThe options array to pass to the getter function. If limit is not set, 10 is used as the default. In most cases that is not what you want.
mixed$callbackAn optional callback function that all results will be passed to upon load. The callback needs to accept $result, $getter, $options.
int$chunk_sizeThe number of entities to pull in before requesting more. You have to balance this between running out of memory in PHP and hitting the db server too often.
bool$inc_offsetIncrement the offset on each fetch. This must be false for callbacks that delete rows. You can set this after the object is created with ElggBatch::setIncrementOffset().
Examples:
/root/Elgg/engine/classes/ElggBatch.php.

Definition at line 209 of file ElggBatch.php.

Member Function Documentation

ElggBatch::__get (   $name)

Read a property.

Parameters
string$name
Returns
mixed private
Examples:
/root/Elgg/engine/classes/ElggBatch.php.

Definition at line 468 of file ElggBatch.php.

ElggBatch::__set (   $name,
  $value 
)

Write a property.

Parameters
string$name
mixed$value
Returns
void private
Examples:
/root/Elgg/engine/classes/ElggBatch.php.

Definition at line 486 of file ElggBatch.php.

ElggBatch::count ( )

Count the total results available at this moment.

As this performs a separate query, the count returned may not match the number of results you can fetch via iteration on a very active DB.

See also
Countable::count()
Returns
int
Examples:
/root/Elgg/engine/classes/ElggBatch.php.

Definition at line 450 of file ElggBatch.php.

ElggBatch::current ( )

{}

Examples:
/root/Elgg/engine/classes/ElggBatch.php.

Definition at line 390 of file ElggBatch.php.

ElggBatch::key ( )

{}

Examples:
/root/Elgg/engine/classes/ElggBatch.php.

Definition at line 397 of file ElggBatch.php.

ElggBatch::next ( )

{}

Examples:
/root/Elgg/engine/classes/ElggBatch.php.

Definition at line 404 of file ElggBatch.php.

ElggBatch::reportIncompleteEntity ( \stdClass  $row)

Tell the process that an entity was incomplete during a fetch.

Parameters
\stdClass$rowprivate
Examples:
/root/Elgg/engine/classes/ElggBatch.php.

Definition at line 262 of file ElggBatch.php.

ElggBatch::rewind ( )

Implements Iterator.

{}

Examples:
/root/Elgg/engine/classes/ElggBatch.php.

Definition at line 375 of file ElggBatch.php.

ElggBatch::setIncrementOffset (   $increment = true)

Increment the offset from the original options array? Setting to false is required for callbacks that delete rows.

Parameters
bool$incrementSet to false when deleting data
Returns
void
Examples:
/root/Elgg/engine/classes/ElggBatch.php.

Definition at line 364 of file ElggBatch.php.

ElggBatch::valid ( )

{}

Examples:
/root/Elgg/engine/classes/ElggBatch.php.

Definition at line 433 of file ElggBatch.php.

Member Data Documentation

ElggBatch::$callbackResult = null
Examples:
/root/Elgg/engine/classes/ElggBatch.php.

Definition at line 164 of file ElggBatch.php.


The documentation for this class was generated from the following file: