getProperties() as $property ) { if ( AnnotationReader::propertyHasAnnotation( $property, 'noVarDump' ) ) { // Ref: zend_declare_typed_property(), zend_mangle_property_name() if ( $property->isPrivate() ) { $mangledName = "\0{$class->name}\0{$property->name}"; } elseif ( $property->isProtected() ) { $mangledName = "\0*\0{$property->name}"; } else { $mangledName = $property->name; } if ( isset( $vars[$mangledName] ) && !is_scalar( $vars[$mangledName] ) ) { $vars[$mangledName] = new Placeholder( $vars[$mangledName] ); } } } $class = $class->getParentClass(); } return $vars; } }