【问题标题】:laravel foreach in foreachforeach 中的 laravel foreach
【发布时间】:2020-08-11 02:34:03
【问题描述】:

我是通过 ajax 将数据发布到控制器 laravel 请求数据是来自本地存储的对象,数据是具有 3 个多维数组的数组,但如果我使用 dd,则只有 1 个数据。我想发布该数据并将其填充到数据库中,但只能从数组中取出 1 个数据

        $req = $request->request;
        foreach ($req as $key => $value) {
            foreach ($value as $key1 => $val) {
                dd($val['qty']);
                dd($val);
            }
        }

【问题讨论】:

  • dd() mean dump and die - 你的脚本在第一个 dd 之后结束,请改用 print_r()

标签: php laravel foreach


【解决方案1】:

您的测试代码应该是...

*如果需要,添加中断

$req = $request->request;
if(is_array($req)) {
    foreach ($req as $key => $value) {
        if(is_array($value)) {
            foreach ($value as $key1 => $val) {
                print_r($val['qty']);
                print_r(json_encode($val));
                print_r($val);
            }
        }
    }
}

【讨论】:

  • “消息”:“为 foreach() 提供的参数无效”、“异常”:“ErrorException”、“文件”:“C:\\xampp\\htdocs\\MATERI\\myolshop\ \app\\Http\\Controllers\\HomeController.php", "line": 73, "trace": [
  • @GalihAdeSaputro 可能是您没有在 for 循环中传递数组...看看更新答案...
【解决方案2】:

dd() 在 laravel 中返​​回值并立即退出代码。这意味着它不会等到循环完成。所以,你可以使用dd()函数到$request->request

dd($request->request);

如果您按照您所说的看到多维数组,则表示代码是正确的。然后您可以同时使用循环并存储值或传递给刀片模板。

【讨论】:

    猜你喜欢
    • 2014-10-04
    • 2017-06-20
    • 1970-01-01
    • 2018-02-17
    • 2015-07-10
    • 1970-01-01
    • 2017-05-09
    • 2018-03-03
    • 1970-01-01
    相关资源
    最近更新 更多