Laravel验证整数,但获取验证错误必须是整数

时间:2017-06-08 21:13:05

标签: php laravel validation

我正在尝试验证电话号码。首先我删除' - '然后我将输入的字符串转换为整数。当我尝试验证整数时,我得到一个输入必须是整数的错误。但是,我只是将字符串转换为整数。为什么我会收到此错误以及如何解决?

这是我的代码

$request->val = str_replace('-', '', $request->val);
                Log::debug($request->val);
                Log::debug(gettype($request->val)); //outputs string
                $request->val = intval($request->val);
                Log::debug(gettype($request->val));//outputs integer
                $this->validate($request, [
                    'val' => 'Integer|min:10|max:15'//Get an error must be interget
                ]);

1 个答案:

答案 0 :(得分:1)

使用->merge更改request属性的值,不要尝试直接改变它,因为状态不会被保存:

$request->merge(['val', intval(str_replace('-', '', $request->val))]);