From 8d090438b659b641dd0f6cbc99193f3b48b2fc4b Mon Sep 17 00:00:00 2001 From: Igor Scheller Date: Mon, 7 Oct 2019 21:59:40 +0200 Subject: Validation rules: min/max/between: Use string length to compare strings --- src/Http/Validation/Rules/Between.php | 10 ++++++ src/Http/Validation/Rules/Max.php | 10 ++++++ src/Http/Validation/Rules/Min.php | 10 ++++++ src/Http/Validation/Rules/StringInputLength.php | 44 +++++++++++++++++++++++++ 4 files changed, 74 insertions(+) create mode 100644 src/Http/Validation/Rules/Between.php create mode 100644 src/Http/Validation/Rules/Max.php create mode 100644 src/Http/Validation/Rules/Min.php create mode 100644 src/Http/Validation/Rules/StringInputLength.php (limited to 'src/Http/Validation') diff --git a/src/Http/Validation/Rules/Between.php b/src/Http/Validation/Rules/Between.php new file mode 100644 index 00000000..106a93ac --- /dev/null +++ b/src/Http/Validation/Rules/Between.php @@ -0,0 +1,10 @@ +isDateTime($input) + ) { + $input = Str::length($input); + } + + return parent::validate($input); + } + + /** + * @param mixed $input + * @return bool + */ + protected function isDateTime($input): bool + { + try { + new DateTime($input); + } catch (Throwable $e) { + return false; + } + + return true; + } +} -- cgit v1.2.3-54-g00ecf