Class: Doctrine_Collection

Source Location: /Doctrine/Collection.php

Class Doctrine_Collection

Class Overview

Implements interfaces:

  • Countable (internal interface)
  • IteratorAggregate (internal interface)
  • Serializable (internal interface)

Doctrine_Collection Collection of Doctrine_Record objects.

Located in /Doctrine/Collection.php [line 34]

Doctrine_Object
   |
   --Doctrine_Access
      |
      --Doctrine_Collection
Author(s): Information Tags:
Version:  $Revision: 2282 $
Link:  www.phpdoctrine.com
Since:  1.0
License:  LGPL

Properties

Methods

[ Top ]
Direct descendents
Child Class Description
Doctrine_Collection_Offset Doctrine_Collection_Offset Collection of Doctrine_Record objects.

[ Top ]
Inherited Properties, Constants, and Methods
Inherited Properties Inherited Methods Inherited Constants

Inherited From Doctrine_Object

Doctrine_Object::$_null

Inherited From Doctrine_Access

Doctrine_Access::offsetExists()
Doctrine_Access::offsetGet()
offsetGet an alias of get()
Doctrine_Access::offsetSet()
sets $offset to $value
Doctrine_Access::offsetUnset()
unset a given offset
Doctrine_Access::setArray()
setArray
Doctrine_Access::__get()
__get -- an alias of get()
Doctrine_Access::__isset()
__isset()
Doctrine_Access::__set()
__set an alias of set()
Doctrine_Access::__unset()
__unset()

Inherited From Doctrine_Object

Doctrine_Object::getNullObject()
getNullObject returns the null object associated with this object
Doctrine_Object::initNullObject()
initNullObject initializes the null object

[ Top ]
Property Summary
static Doctrine_Null   $null  
array   $data  
string   $keyColumn  
Doctrine_Record   $reference  
string   $referenceField  
Doctrine_Relation   $relation  
array   $_snapshot  
Doctrine_Table   $_table  

[ Top ]
Method Summary
static void   initNullObject()   initNullObject initializes the null object for this collection
Doctrine_Collection   __construct()   constructor
boolean   add()   adds a record to collection
boolean   contains()   contains whether or not this collection contains a specified element
integer   count()   count this class implements interface countable returns the number of records in this collection
Doctrine_Collection   delete()   delete
Doctrine_Record   get()   get returns a record for given key
array   getData()   getData returns all the records as an array
void   getDeleteDiff()  
mixed   getFirst()   getFirst returns the first record in the collection
void   getInsertDiff()  
object ArrayIterator   getIterator()   getIterator
string   getKeyColumn()   getKeyColumn returns the name of the key column
array   getKeys()   returns all keys
mixed   getLast()   getLast returns the last record in the collection
Doctrine_Iterator_Normal   getNormalIterator()   getNormalIterator returns normal iterator - an iterator that will not expand this collection
array   getPrimaryKeys()  
mixed   getReference()   getReference
array   getSnapshot()   getSnapshot returns the data of the last snapshot
Doctrine_Table   getTable()   getTable returns the table this collection belongs to
boolean   loadRelated()   loadRelated
void   populateRelated()   populateRelated
Doctrine_Collection   processDiff()   processDiff processes the difference of the last snapshot and the current data
boolean   remove()   remove removes a specified collection element
Doctrine_Collection   save()   save saves all records of this collection and processes the difference of the last snapshot and the current data
void   search()  
array   serialize()   this method is automatically called when this Doctrine_Collection is serialized
void   set()   set
Doctrine_Collection   setData()   setData
Doctrine_Collection   setKeyColumn()   setKeyColumn sets the key column for this collection
void   setReference()   setReference sets a reference pointer
Doctrine_Collection   takeSnapshot()   takeSnapshot takes a snapshot from this collection
void   toArray()   toArray Mimics the result of a $query->execute(array(), Doctrine::FETCH_ARRAY);
void   unserialize()   unseralize this method is automatically called everytime a Doctrine_Collection object is unserialized
void   __toString()   returns a string representation of this object

[ Top ]
Properties
static Doctrine_Null   $null [line 67]
API Tags:
Access:  protected


[ Top ]
array   $data = array() [line 39]
API Tags:
Access:  protected


[ Top ]
string   $keyColumn [line 63]
API Tags:
Access:  protected


[ Top ]
Doctrine_Record   $reference [line 51]
API Tags:
Access:  protected


[ Top ]
string   $referenceField [line 55]
API Tags:
Access:  protected


[ Top ]
Doctrine_Relation   $relation [line 59]
API Tags:
Access:  protected


[ Top ]
array   $_snapshot = array() [line 47]
API Tags:
Access:  protected


[ Top ]
Doctrine_Table   $_table [line 43]
API Tags:
Access:  protected


[ Top ]
Methods
static method initNullObject  [line 94]

  static void initNullObject( Doctrine_Null $null  )

initNullObject initializes the null object for this collection

Parameters:
Doctrine_Null   $null: 

API Tags:
Access:  public


Redefinition of:
Doctrine_Object::initNullObject()
initNullObject initializes the null object

[ Top ]
Constructor __construct  [line 75]

  Doctrine_Collection __construct( Doctrine_Table|string $table  )

constructor

Parameters:
Doctrine_Table|string   $table: 

API Tags:
Access:  public


Redefined in descendants as:

[ Top ]
add  [line 380]

  boolean add( Doctrine_Record $record, [string $key = null]  )

adds a record to collection

Parameters:
Doctrine_Record   $record:  record to be added
string   $key:  optional key for the record

API Tags:
Access:  public


[ Top ]
contains  [line 276]

  boolean contains( mixed $key  )

contains whether or not this collection contains a specified element

Parameters:
mixed   $key:  the key of the element

API Tags:
Access:  public


[ Top ]
count  [line 356]

  integer count( )

count this class implements interface countable returns the number of records in this collection


API Tags:
Access:  public


Implementation of:
Countable::count

[ Top ]
delete  [line 645]

  Doctrine_Collection delete( [Doctrine_Connection $conn = null]  )

delete

single shot delete deletes all records from this collection and uses only one database query to perform this operation

Parameters:
Doctrine_Connection   $conn: 

API Tags:
Access:  public


[ Top ]
get  [line 301]

  Doctrine_Record get( mixed $key  )

get returns a record for given key

There are two special cases:

  1. if null is given as a key a new record is created and attached
at the end of the collection

2. if given key does not exist, then a new record is create and attached to the given key

Collection also maps referential information to newly created records

Parameters:
mixed   $key:  the key of the element

API Tags:
Return:  return a specified record
Access:  public


[ Top ]
getData  [line 192]

  array getData( )

getData returns all the records as an array


API Tags:
Access:  public


[ Top ]
getDeleteDiff  [line 603]

  void getDeleteDiff( )


API Tags:
Access:  public


[ Top ]
getFirst  [line 202]

  mixed getFirst( )

getFirst returns the first record in the collection


API Tags:
Access:  public


[ Top ]
getInsertDiff  [line 607]

  void getInsertDiff( )


API Tags:
Access:  public


[ Top ]
getIterator  [line 668]

  object ArrayIterator getIterator( )

getIterator


API Tags:
Access:  public


Implementation of:
IteratorAggregate::getIterator

Redefined in descendants as:

[ Top ]
getKeyColumn  [line 182]

  string getKeyColumn( )

getKeyColumn returns the name of the key column


API Tags:
Access:  public


[ Top ]
getKeys  [line 345]

  array getKeys( )

returns all keys


API Tags:
Access:  public


[ Top ]
getLast  [line 212]

  mixed getLast( )

getLast returns the last record in the collection


API Tags:
Access:  public


[ Top ]
getNormalIterator  [line 530]

  Doctrine_Iterator_Normal getNormalIterator( )

getNormalIterator returns normal iterator - an iterator that will not expand this collection


API Tags:
Access:  public


[ Top ]
getPrimaryKeys  [line 327]

  array getPrimaryKeys( )


API Tags:
Return:  an array containing all primary keys
Access:  public


[ Top ]
getReference  [line 251]

  mixed getReference( )

getReference


API Tags:
Access:  public


[ Top ]
getSnapshot  [line 559]

  array getSnapshot( )

getSnapshot returns the data of the last snapshot


API Tags:
Return:  returns the data in last snapshot
Access:  public


[ Top ]
getTable  [line 104]

  Doctrine_Table getTable( )

getTable returns the table this collection belongs to


API Tags:
Access:  public


[ Top ]
loadRelated  [line 427]

  boolean loadRelated( [mixed $name = null]  )

loadRelated

Parameters:
mixed   $name: 

API Tags:
Access:  public


[ Top ]
populateRelated  [line 473]

  void populateRelated( string $name, Doctrine_Collection $coll  )

populateRelated

Parameters:
string   $name: 
Doctrine_Collection   $coll: 

API Tags:
Access:  public


[ Top ]
processDiff  [line 575]

  Doctrine_Collection processDiff( )

processDiff processes the difference of the last snapshot and the current data

an example: Snapshot with the objects 1, 2 and 4 Current data with objects 2, 3 and 5

The process would remove object 4


API Tags:
Access:  public


[ Top ]
remove  [line 262]

  boolean remove( mixed $key  )

remove removes a specified collection element

Parameters:
mixed   $key: 

API Tags:
Access:  public


[ Top ]
save  [line 619]

  Doctrine_Collection save( [Doctrine_Connection $conn = null]  )

save saves all records of this collection and processes the difference of the last snapshot and the current data

Parameters:
Doctrine_Connection   $conn:  optional connection parameter

API Tags:
Access:  public


[ Top ]
search  [line 280]

  void search( Doctrine_Record $record  )

Parameters:
Doctrine_Record   $record: 

API Tags:
Access:  public


[ Top ]
serialize  [line 123]

  array serialize( )

this method is automatically called when this Doctrine_Collection is serialized


API Tags:
Access:  public


Implementation of:
Serializable::serialize

[ Top ]
set  [line 366]

  void set( integer $key, Doctrine_Record $record  )

set

Parameters:
integer   $key: 
Doctrine_Record   $record: 

API Tags:
Access:  public


[ Top ]
setData  [line 114]

  Doctrine_Collection setData( $data  )

setData

Parameters:
array   $data: 

API Tags:
Access:  public


[ Top ]
setKeyColumn  [line 170]

  Doctrine_Collection setKeyColumn( string $column  )

setKeyColumn sets the key column for this collection

Parameters:
string   $column: 

API Tags:
Access:  public


[ Top ]
setReference  [line 222]

  void setReference( Doctrine_Record $record, Doctrine_Relation $relation  )

setReference sets a reference pointer

Parameters:
Doctrine_Record   $record: 
Doctrine_Relation   $relation: 

API Tags:
Access:  public


[ Top ]
takeSnapshot  [line 547]

  Doctrine_Collection takeSnapshot( )

takeSnapshot takes a snapshot from this collection

snapshots are used for diff processing, for example when a fetched collection has three elements, then two of those are being removed the diff would contain one element

Doctrine_Collection::save() attaches the diff with the help of last snapshot.


API Tags:
Access:  public


[ Top ]
toArray  [line 589]

  void toArray( [boolean $deep = false]  )

toArray Mimics the result of a $query->execute(array(), Doctrine::FETCH_ARRAY);

Parameters:
boolean   $deep: 

API Tags:
Access:  public


[ Top ]
unserialize  [line 144]

  void unserialize( $serialized  )

unseralize this method is automatically called everytime a Doctrine_Collection object is unserialized

Parameters:
   $serialized: 

API Tags:
Access:  public


Implementation of:
Serializable::unserialize

[ Top ]
__toString  [line 676]

  void __toString( )

returns a string representation of this object


API Tags:
Access:  public


[ Top ]