有一个函数可以替换请求中的输入,称为merge。
我想更改嵌套数组的值,以便$this->validate method
验证它。
这是$request->all()
array:2 [
"type" => "customer"
"users" => array:1 [
0 => array:3 [
"name" => "eeee"
"username" => "eeee"
"password" => "123456"
]
]
]
如果我使用forloop
,如何访问用户名值并进行更改for($i=0; $i < count($request->users); $i++){
// i need to access the value here
// i have done something like $request->merge(['users'][$index]['username'] => 'xxx');
// it doesnt work
}
任何解决方案的家伙? 谢谢。
答案 0 :(得分:0)
你可以尝试使用merge方法:
$new_users_data = $request->input('users');
foreach ($new_user_data as &$user_data) {
$user_data['username'] = 'new name';
}
$request->merge([
'users' => $new_users_data,
]);
您还可以使用请求replace method替换整个输入。