我正在尝试验证电话号码。首先我删除' - '然后我将输入的字符串转换为整数。当我尝试验证整数时,我得到一个输入必须是整数的错误。但是,我只是将字符串转换为整数。为什么我会收到此错误以及如何解决?
这是我的代码
$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
]);
答案 0 :(得分:1)
使用->merge
更改request
属性的值,不要尝试直接改变它,因为状态不会被保存:
$request->merge(['val', intval(str_replace('-', '', $request->val))]);