Laravel validate decimal 0-99.99
Laravel не имеет проверки для decimal
, поэтому мне нужно regex
или другой метод проверки для проверки числового значения 0 - 99.99
Я пробовал
required|regex:^d{0,2}(.d{1,2})?$/
required|regex:[1-9]d?(.dd?)?|0.[1-9]d?||0.0[1-9]
required|regex:/[1-9]d?(.dd?)?|0.[1-9]d?||0.0[1-9]/
required|regex:/[d]{2}.[d]{2}/
required|regex:/[d]{0-2}.[d]{0,2}/
я либо получаю "недопустимый формат" при попытке ввести 0.05
или неизвестные модификаторы для preg_match
помощь с regex
необходимо проверить десятичную дробь в laravel
оценивается (с необязательными значениями до или после decimal
3 ответов
На Что Laravel between
правило проверки на самом деле довольно мощное и может обрабатывать десятичные значения. Поэтому нет необходимости использовать regex просто сделайте это:
'required|between:0,99.99'
на что Laravel(5?) между правилом всегда есть разбор десятичного знака, вы должны добавить к нему числовое значение для правильной проверки
'required|numeric|between:0,99.99',
это будет работать для числа с точностью до двух десятичных знаков:
function rules(){
return [
'field_name'=> array('regex:/^(?:d*.d{1,2}|d+)$/','min:1','max:10')
];
}