diff --git a/src/Transformer/Helpers/RecursiveFilterHelper.php b/src/Transformer/Helpers/RecursiveFilterHelper.php index 0661c8f..5c49c2f 100644 --- a/src/Transformer/Helpers/RecursiveFilterHelper.php +++ b/src/Transformer/Helpers/RecursiveFilterHelper.php @@ -85,7 +85,9 @@ private static function filterKeys( array &$idProperties ) { foreach ($array as $key => &$value) { - if (self::isPreservableKey($key, $keepKeys, $idProperties)) { + if (self::isPreservableKey($key, $keepKeys, $idProperties) + || false === in_array($key, $mappings[$typeKey]->getProperties()) + ) { $newArray[$key] = $value; if (\is_array($newArray[$key])) { self::deletePropertiesNotInFilter($mappings, $newArray[$key], $typeKey);