Как я могу сделать несколько тысяч проверок на Laravel?

Моя проверка на Laravel, как это:

return Validator::make($data, [
    ...
    'amount' => 'required|integer|min:20000',
]);

Я хочу, чтобы значение суммы было кратно тысячам

Таким образом, значение, которое может быть введено только кратными тысячам

Например: 25000, 50000, 151000, 200000 и т. Д.

Примеры входных данных, которые не кратны тысячам: 25500, 50500, 151500, 200500 и т. Д.

Как мне это сделать?

2 ответа

Решение

Вы можете взять модуль этого числа, реализуя эту логику, используя пользовательское правило проверки: https://laravel.com/docs/5.4/validation.

что-то вроде этого должно сделать:

  Validator::extend('mod1000', function ($attribute, $value, $parameters, $validator) {
            return $value % 1000 == 0;
  });

Вы можете использовать регулярное выражение для такой проверки:

return Validator::make($data, [
    ...
    'amount' => 'required|integer|regex:/^[1-9]+[0-9]*000$/',
]);

Последние три ноля в выражении для тысяч. Первое число должно быть отличным от нуля, и любые числа между ними являются идеальной проверкой для вашего случая.

надеюсь, вы понимаете.

Другие вопросы по тегам