private function getProperty($name, $object)
    {
        $reflection = new ReflectionObject($object);
        $property   = $reflection->getProperty($name);
        if (method_exists($property, 'setAccessible')) {
            $property->setAccessible(true);
        }
        try {
            return $property->getValue($object);
        } catch (ReflectionException $e) {
            return $this->getPrivatePropertyNoMatterWhat($name, $object);
        }
    }
private function getProperty($name, $object)
    {
        $reflection = new ReflectionObject($object);
        $property   = $reflection->getProperty($name);
        if (method_exists($property, 'setAccessible')) {
            $property->setAccessible(true);
        }
        try {
            return $property->getValue($object);
        } catch (ReflectionException $e) {
            return $this->getPrivatePropertyNoMatterWhat($name, $object);
        }
    }
Extracts the member value even if private using reflection.

@param string $name        Property name.
@param object $object      Object to read.

@return mixed              Value of property.