diff --git a/src/Database/Validator/Structure.php b/src/Database/Validator/Structure.php index 6500e5cd7..ecf62e367 100644 --- a/src/Database/Validator/Structure.php +++ b/src/Database/Validator/Structure.php @@ -269,6 +269,7 @@ public function isValid($document): bool break; case Database::VAR_INTEGER: + // We need both Integer and Range because Range implicitly casts non-numeric values $validators[] = new Integer(); $max = $size >= 8 ? Database::BIG_INT_MAX : Database::INT_MAX; $min = $signed ? -$max : 0; @@ -276,6 +277,7 @@ public function isValid($document): bool break; case Database::VAR_FLOAT: + // We need both Float and Range because Range implicitly casts non-numeric values $validators[] = new FloatValidator(); $min = $signed ? -Database::DOUBLE_MAX : 0; $validators[] = new Range($min, Database::DOUBLE_MAX, Database::VAR_FLOAT);