diff options
Diffstat (limited to 'system')
-rw-r--r-- | system/language/english/form_validation_lang.php | 1 | ||||
-rw-r--r-- | system/libraries/Form_validation.php | 21 |
2 files changed, 22 insertions, 0 deletions
diff --git a/system/language/english/form_validation_lang.php b/system/language/english/form_validation_lang.php index 9156ebef0..b7ee25a38 100644 --- a/system/language/english/form_validation_lang.php +++ b/system/language/english/form_validation_lang.php @@ -53,6 +53,7 @@ $lang['form_validation_less_than'] = 'The {field} field must contain a number l $lang['form_validation_less_than_equal_to'] = 'The {field} field must contain a number less than or equal to {param}.'; $lang['form_validation_greater_than'] = 'The {field} field must contain a number greater than {param}.'; $lang['form_validation_greater_than_equal_to'] = 'The {field} field must contain a number greater than or equal to {param}.'; +$lang['form_validation_between'] = 'The {field} field must contain a number between {param}.'; /* End of file form_validation_lang.php */ /* Location: ./system/language/english/form_validation_lang.php */
\ No newline at end of file diff --git a/system/libraries/Form_validation.php b/system/libraries/Form_validation.php index b640f1ec1..16766ca66 100644 --- a/system/libraries/Form_validation.php +++ b/system/libraries/Form_validation.php @@ -1438,6 +1438,27 @@ class CI_Form_validation { // -------------------------------------------------------------------- /** + * Between two numeric values + * + * @param int + * @param string + * @return bool + */ + public function between($str, $range) + { + if ( ! preg_match('/^\s?(\d+)\s?,\s?(\d+)\s?$/', $range)) + { + return FALSE; + } + + list($range_start, $range_end) = array_map('intval', explode(',', $range)); + + return is_numeric($str) ? ($str >= $range_start && $str <= $range_end) : FALSE; + } + + // -------------------------------------------------------------------- + + /** * Is a Natural number (0,1,2,3, etc.) * * @param string |