Property
Property.
A property is always in a KEY:VALUE structure, and may optionally contain parameters.
- Full name:
\Sabre\VObject\Property
- Parent class:
\Sabre\VObject\Node
- This class is an Abstract class
Properties
name
Property name.
This will contain a string such as DTSTART, SUMMARY, FN.
group
Property group.
This is only used in vcards
parameters
List of parameters.
value
Current value.
delimiter
In case this is a multi-value property. This string will be used as a delimiter.
lineIndex
The line number in the original iCalendar / vCard file that corresponds with the current node if the node was read from a file.
lineString
The line string from the original iCalendar / vCard file that corresponds with the current node if the node was read from a file.
Methods
__construct
Creates the generic property.
public __construct(\Sabre\VObject\Component $root, string $name, string|array|null $value = null, array $parameters = [], string $group = null, int $lineIndex = null, string $lineString = null): mixed
Parameters must be specified in key=>value syntax.
Parameters:
Parameter | Type | Description |
---|---|---|
$root |
\Sabre\VObject\Component | The root document |
$name |
string | |
$value |
string|array|null | |
$parameters |
array | List of parameters |
$group |
string | The vcard property group |
$lineIndex |
int | |
$lineString |
string |
setValue
Updates the current value.
This may be either a single, or multiple strings in an array.
Parameters:
Parameter | Type | Description |
---|---|---|
$value |
string|array |
getValue
Returns the current value.
This method will always return a singular value. If this was a multi-value object, some decision will be made first on how to represent it as a string.
To get the correct multi-value version, use getParts.
setParts
Sets a multi-valued property.
Parameters:
Parameter | Type | Description |
---|---|---|
$parts |
array |
getParts
Returns a multi-valued property.
This method always returns an array, if there was only a single value, it will still be wrapped in an array.
add
Adds a new parameter.
If a parameter with same name already existed, the values will be combined. If nameless parameter is added, we try to guess its name.
Parameters:
Parameter | Type | Description |
---|---|---|
$name |
string | |
$value |
string|array|null |
parameters
Returns an iterable list of children.
getValueType
Returns the type of value.
This corresponds to the VALUE= parameter. Every property also has a 'default' valueType.
- This method is abstract.
setRawMimeDirValue
Sets a raw value coming from a mimedir (iCalendar/vCard) file.
This has been 'unfolded', so only 1 line will be passed. Unescaping is not yet done, but parameters are not included.
- This method is abstract.
Parameters:
Parameter | Type | Description |
---|---|---|
$val |
string |
getRawMimeDirValue
Returns a raw mime-dir representation of the value.
- This method is abstract.
serialize
Turns the object back into a serialized blob.
getJsonValue
Returns the value, in the format it should be encoded for JSON.
This method must always return an array.
setJsonValue
Sets the JSON value, as it would appear in a jCard or jCal object.
The value must always be an array.
Parameters:
Parameter | Type | Description |
---|---|---|
$value |
array |
jsonSerialize
This method returns an array, with the representation as it should be encoded in JSON. This is used to create jCard or jCal documents.
setXmlValue
Hydrate data from a XML subtree, as it would appear in a xCard or xCal object.
Parameters:
Parameter | Type | Description |
---|---|---|
$value |
array |
xmlSerialize
This method serializes the data into XML. This is used to create xCard or xCal documents.
Parameters:
Parameter | Type | Description |
---|---|---|
$writer |
\Sabre\Xml\Writer | XML writer |
xmlSerializeValue
This method serializes only the value of a property. This is used to create xCard or xCal documents.
Parameters:
Parameter | Type | Description |
---|---|---|
$writer |
\Sabre\Xml\Writer | XML writer |
__toString
Called when this object is being cast to a string.
If the property only had a single value, you will get just that. In the case the property had multiple values, the contents will be escaped and combined with ,.
offsetExists
Checks if an array element exists.
Parameters:
Parameter | Type | Description |
---|---|---|
$name |
mixed |
offsetGet
Returns a parameter.
If the parameter does not exist, null is returned.
Parameters:
Parameter | Type | Description |
---|---|---|
$name |
string |
offsetSet
Creates a new parameter.
Parameters:
Parameter | Type | Description |
---|---|---|
$name |
string | |
$value |
mixed |
offsetUnset
Removes one or more parameters with the specified name.
Parameters:
Parameter | Type | Description |
---|---|---|
$name |
string |
__clone
This method is automatically called when the object is cloned.
Specifically, this will ensure all child elements are also cloned.
validate
Validates the node for correctness.
The following options are supported: - Node::REPAIR - If something is broken, and automatic repair may be attempted.
An array is returned with warnings.
Every item in the array has the following properties: * level - (number between 1 and 3 with severity information) * message - (human readable message) * node - (reference to the offending node)
Parameters:
Parameter | Type | Description |
---|---|---|
$options |
int |
destroy
Call this method on a document if you're done using it.
It's intended to remove all circular references, so PHP can easily clean it up.
Inherited methods
serialize
Serializes the node into a mimedir format.
- This method is abstract.
jsonSerialize
This method returns an array, with the representation as it should be encoded in JSON. This is used to create jCard or jCal documents.
- This method is abstract.
xmlSerialize
This method serializes the data into XML. This is used to create xCard or xCal documents.
- This method is abstract.
Parameters:
Parameter | Type | Description |
---|---|---|
$writer |
\Sabre\Xml\Writer | XML writer |
destroy
Call this method on a document if you're done using it.
It's intended to remove all circular references, so PHP can easily clean it up.
getIterator
Returns the iterator for this object.
setIterator
Sets the overridden iterator.
Note that this is not actually part of the iterator interface
Parameters:
Parameter | Type | Description |
---|---|---|
$iterator |
\Sabre\VObject\ElementList |
validate
Validates the node for correctness.
The following options are supported: Node::REPAIR - May attempt to automatically repair the problem.
This method returns an array with detected problems. Every element has the following properties:
- level - problem level.
- message - A human-readable string describing the issue.
- node - A reference to the problematic node.
The level means: 1 - The issue was repaired (only happens if REPAIR was turned on) 2 - An inconsequential issue 3 - A severe issue.
Parameters:
Parameter | Type | Description |
---|---|---|
$options |
int |
count
Returns the number of elements.
offsetExists
Checks if an item exists through ArrayAccess.
This method just forwards the request to the inner iterator
Parameters:
Parameter | Type | Description |
---|---|---|
$offset |
int |
offsetGet
Gets an item through ArrayAccess.
This method just forwards the request to the inner iterator
Parameters:
Parameter | Type | Description |
---|---|---|
$offset |
int |
offsetSet
Sets an item through ArrayAccess.
This method just forwards the request to the inner iterator
Parameters:
Parameter | Type | Description |
---|---|---|
$offset |
int | |
$value |
mixed |
offsetUnset
Sets an item through ArrayAccess.
This method just forwards the request to the inner iterator
Parameters:
Parameter | Type | Description |
---|---|---|
$offset |
int |
Automatically generated on 2025-03-18