Add support to serialize Object properties

This commit is contained in:
Matias Griese
2017-09-25 14:17:14 +03:00
parent 588c509194
commit 71b11366bb

View File

@@ -133,7 +133,19 @@ trait ObjectPropertyTrait
*/
protected function getElements()
{
return array_intersect_key(get_object_vars($this), array_filter($this->_definedProperties));
$properties = array_intersect_key(get_object_vars($this), array_filter($this->_definedProperties));
$elements = [];
foreach ($properties as $offset => $value) {
$methodName = "offsetSerialize_{$offset}";
if (method_exists($this, $methodName)) {
$elements[$offset] = $this->{$methodName}($value);
} else {
$elements[$offset] = $value;
}
}
return $elements;
}
/**