php - 如何使用合并替换 Laravel 请求中的嵌套数组值?

标签 php laravel laravel-5.4 laravel-request

有一个函数可以替换请求中的输入,称为合并。 我想更改嵌套数组的值,以便可以通过 $this->validate 方法 对其进行验证..

这是$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
 }

各位有什么解决办法吗? 谢谢。

最佳答案

您可以使用合并方法尝试类似的操作:

$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 将整个输入替换为新的输入.

关于php - 如何使用合并替换 Laravel 请求中的嵌套数组值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44257068/

相关文章:

javascript - 一种表单中的两个提交按钮具有不同的操作

php - Dreamweaver 扩展美化 PHP/JavaScript/jQuery 代码

php - 当在另一个方法中返回 View 时,Laravel 返回空白页

php - Facade.php 第 216 行中的 FatalErrorException:调用未定义的方法 Illuminate\Foundation\Application::missing()

php - Laravel [5.2.21] 自定义 Auth Guard 不持久

php - wordpress 无法访问管理部分和网站,因为主题不存在

php - 在 Laravel Blade 中访问嵌套对象

laravel - 如何从 Laravel SQL 查询中删除引号?

php - Laravel 5.4 级联无法创建 REST API(也无法实现一对多关系)

php - 为什么我无法将连接变量传递给我的函数?