SetaPDF_Core_Type_Array Class representing an array
File: /SetaPDF v2/Core/Type/Array.php
Class hierarchy
Implements
Summary
Methods
- __construct()
- __sleep()
- __wakeup()
- attach()
- cleanUp()
- clear()
- count()
- current()
- deepClone()
- detach()
- detachAll()
- ensure()
- getChildren()
- getValue()
- hasChildren()
- indexOf()
- insertBefore()
- isObserved()
- key()
- merge()
- mergeUnique()
- next()
- notify()
- offsetExists()
- offsetGet()
- offsetSet()
- offsetUnset()
- push()
- rewind()
- setValue()
- toPdfString()
- toPhp()
- unshift()
- update()
- valid()
- writeTo()
Properties
$_observers
The Objects to notify on any change
This will be the PDF document or another value holding this one. Initially this will be an array.
$_values
The values
An array of SetaPDF_Core_Type_AbstractType
objects
Static Methods
_ensureType()
Ensure that a value is an instance of a specific PDF type.
Parameters
- $type : string
- $value : mixed
- $errorMessage : string
- $ensure
Exceptions
Throws SetaPDF_Core_Type_Exception
ensureType()
Ensures that the passed array is a SetaPDF_Core_Type_Array instance with a (optional) specific size.
Parameters
- $array : mixed
- $size : null|int
Exceptions
Throws SetaPDF_Core_Type_Exception
ensureWithType()
Ensures that the passed value is an instance of the passed type.
Parameters
- $type : string
- $value : mixed
Exceptions
Throws SetaPDF_Core_Type_Exception
is()
Checks if the type of a value is the expected one.
Indirect references will be evaluated if $ensure
is set to true
.
Parameters
- $type : string
- $value : mixed
- $ensure : bool
writePdfString()
Parses a php array to a pdf array string and writes it into a writer.
Parameters
- $writer : SetaPDF_Core_WriteInterface
- $values : array
Exceptions
Throws InvalidArgumentException
See
Methods
__construct()
The constructor.
Parameters
- $values : array
An array filled with values of type
SetaPDF_Core_Type_AbstractType
Exceptions
Throws InvalidArgumentException
__sleep()
Implementation of __sleep.
We remove the observers from all elements because they will get read if they are waked up in an observed object.
attach()
Add an observer to the object.
This method forwards the "attach()"-call to all values of this array.
Parameters
- $observer : SplObserver
deepClone()
Clone the object recursively in the context of a document.
Parameters
- $document : SetaPDF_Core_Document
detach()
Detach an observer from the object.
Implementation of the Observer Pattern.
Parameters
- $observer : SplObserver
ensure()
Returns the main value.
This method is used for automatically resolving of indirect references.
Parameters
- $forceObservation : bool|null
hasChildren()
Check whether the current entry is an SetaPDF_Core_Type_Array
.
indexOf()
Returns the index of the element.
If the element isn't in this array -1 will be returned.
Parameters
insertBefore()
Inserts an element before another one.
Index mustn't be higher than the count of elements in array.
Index 0 is allowed in an empty array.
Parameters
- $value : SetaPDF_Core_Type_AbstractType
- $beforeIndex : null|int
Exceptions
Throws InvalidArgumentException
merge()
mergeUnique()
Merges this PDF array with other PDF arrays while only taking not existing values.
Exceptions
Throws InvalidArgumentException
notify()
Notifies all attached observers.
Implementation of the Observer Pattern.
Has to be called by any method that changes a value.
offsetSet()
Offset to set.
Parameters
- $offset : null|int
The offset to assign the value to.
- $value : SetaPDF_Core_Type_AbstractType
The value to set.
Exceptions
Throws InvalidArgumentException
push()
setValue()
Sets the values.
Parameters
- $values : array|SetaPDF_Core_Type_Array
An array of
SetaPDF_Core_Type_AbstractType
objects
Exceptions
Throws InvalidArgumentException
toPdfString()
Returns the type as a formatted PDF string.
Parameters
- $pdfDocument : SetaPDF_Core_Document|null
unshift()
Prepends one element to the beginning of the array.
Parameters
- $value : SetaPDF_Core_Type_AbstractType
update()
Triggered if a value of this object is changed.
Forward this to other observers.
Parameters
- $SplSubject : SplSubject
writeTo()
Writes the type as a formatted PDF string to the document.
Parameters
- $pdfDocument : SetaPDF_Core_Document