diff --git a/library/Zend/Stdlib/Hydrator/ArraySerializable.php b/library/Zend/Stdlib/Hydrator/ArraySerializable.php index 09dfebba1cd..d9631122e15 100644 --- a/library/Zend/Stdlib/Hydrator/ArraySerializable.php +++ b/library/Zend/Stdlib/Hydrator/ArraySerializable.php @@ -31,15 +31,16 @@ public function extract($object) )); } - $self = $this; $data = $object->getArrayCopy(); - array_walk($data, function (&$value, $name) use ($self, &$data) { - if (!$self->getFilter()->filter($name)) { + + foreach ($data as $name => $value) { + if (!$this->getFilter()->filter($name)) { unset($data[$name]); - } else { - $value = $self->extractValue($name, $value); + continue; } - }); + + $data[$name] = $this->extractValue($name, $value); + } return $data; }