code: 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);
          }
      }
docs: 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.