protected function dumpProperty($property, $depth, \SplObjectStorage $dumped)
	{
		$value = $this->getProperty($property);

		if ($depth > 0)
		{
			// Check if the object is also a dumpable object.
			if ($value instanceof DumpableInterface)
			{
				// Do not dump the property if it has already been dumped.
				if (!$dumped->contains($value))
				{
					$value = $value->dump($depth - 1, $dumped);
				}
			}

			// Check if the object is a date.
			if ($value instanceof \DateTime)
			{
				$value = $value->format('Y-m-d H:i:s');
			}
			elseif ($value instanceof Registry)
			{
				$value = $value->toObject();
			}
		}

		return $value;
	}
protected function dumpProperty($property, $depth, \SplObjectStorage $dumped)
	{
		$value = $this->getProperty($property);

		if ($depth > 0)
		{
			// Check if the object is also a dumpable object.
			if ($value instanceof DumpableInterface)
			{
				// Do not dump the property if it has already been dumped.
				if (!$dumped->contains($value))
				{
					$value = $value->dump($depth - 1, $dumped);
				}
			}

			// Check if the object is a date.
			if ($value instanceof \DateTime)
			{
				$value = $value->format('Y-m-d H:i:s');
			}
			elseif ($value instanceof Registry)
			{
				$value = $value->toObject();
			}
		}

		return $value;
	}
protected function dumpProperty ( $ property , $ depth , \ SplObjectStorage $ dumped ) { $ value = $ this -> getProperty ( $ property ) ; if ( $ depth > 0 ) { // Check if the object is also a dumpable object. if ( $ value instanceof DumpableInterface ) { // Do not dump the property if it has already been dumped. if ( ! $ dumped -> contains ( $ value ) ) { $ value = $ value -> dump ( $ depth - 1 , $ dumped ) ; } } // Check if the object is a date. if ( $ value instanceof \ DateTime ) { $ value = $ value -> format ( 'Y-m-d H:i:s' ) ; } elseif ( $ value instanceof Registry ) { $ value = $ value -> toObject ( ) ; } } return $ value ; }
Dumps a data property.

If recursion is set, this method will dump any object implementing Data\Dumpable (like Data\Object and Data\Set); it will
convert a Date object to a string; and it will convert a Registry to an object.

@param   string             $property  The name of the data property.
@param   integer            $depth     The current depth of recursion (a value of 0 will ignore recursion).
@param   \SplObjectStorage  $dumped    An array of already serialized objects that is used to avoid infinite loops.

@return  mixed  The value of the dumped property.

@since   1.0
Dumps a data property .