如何修改 Request $request 的值?
场景:用户界面有一个 ver 版本的字段,是自动的,由用户可选,用户提交后,根据 body 内容判断是 V1 还是 V2,并给 $_POST['ver]
赋值。
办法:经过搜索,发现 Request 有一个 merge 方法,可以修改 Request 的值。
$request->merge(['ver' => 'V1']);
如果有更好的办法欢迎一起讨论。
本帖已被设为精华帖!
本帖由系统于 4年前 自动加精
高认可度评论:
常用请求输入的方法
Laravel修改Request的值有好几个办法,可以去查看源码:
直接set
$request->foo = 'bar'
Request实例上有一个$request属性,这是一个
Symfony\Component\HttpFoundation\ParameterBag
的实例,可以这样:@翁航 ,刚刚测试了一下你的方法,使用 $request->get('ver') 无法取回值。
试试
Illuminate\Http\Request::replace($input)
https://laravel.com/api/5.1/Illuminate/Htt...
@fantiq , 可行,非常感谢。
常用请求输入的方法
@kylesean , 你这个全面,谢谢。
https://segmentfault.com/q/101000000689866...
$request->attritube->set($key, $value)