【问题标题】:Laravel foreach loopLaravel foreach 循环
【发布时间】:2019-03-29 06:53:46
【问题描述】:

这可能是一个奇怪的问题,但我需要你的帮助

我可能有一个包含值的数组。

foreach ($users as $user)
{
    $name_user = //condition
    array_push($firstarray, $name_user );
}

假设 $firstarray 现在有这些值(例如:1 ,2 ,3)

现在

foreach ($firstarray as $t)
{
    dd($t);       
}

它只显示第一个值

应该这样工作吗?我认为它必须显示三个值。

【问题讨论】:

  • 你好@darcy111在下面试试我的答案:)

标签: laravel


【解决方案1】:

当然它只会显示 1,因为 dd() 的意思是 Dump and Die

您在循环中使用DD,在第一个循环中,您使用了dd(),在读取dd()后,它将杀死所有下一道工序

我建议你使用 dump() 这样你就可以看到所有的内容

【讨论】:

  • 你好@darcy111,如果它回答了你的问题,请将此答案标记为正确的答案,非常感谢!
【解决方案2】:

请注意 Laravel 有 dd()dump()

dd() = 转储并死掉,这意味着它将向您显示 (print/echo) 变量,但同时您的脚本将停止执行在您的代码上达到这一点。

dump() = 转储,只是表示它会显示你感兴趣的变量,你的脚本会继续执行。

对于您的情况,您应该这样做:

foreach ($firstarray as $t)
{
   dump($t);
}

【讨论】:

    【解决方案3】:

    “dd”的意思是“转储和死亡”。 它打印 $firstarray 的第一个值“t”,然后在不执行循环的其余部分的情况下终止。 您可能想尝试使用“echo”或“print_r”。 此外,如果您正在调试并且想知道数组的值而不必使用 foreach 循环,则可以使用 var_dump($firstarray)。

    【讨论】:

      【解决方案4】:

      Foreach 将遍历您的数组。由于您正在转储并死掉,因此您的代码将在第一次迭代时死掉。

      如果你想知道你的数组值,你可以将你的数组转储到循环之外

      dd($firstarray);
      

      【讨论】:

        【解决方案5】:

        dd 是一个dump and die的函数。让我们使用var_dump 方法来dump and not die

         foreach ($firstarray as $t)
        {
            var_dump($t);
        }
        

        【讨论】:

          【解决方案6】:

          您可以使用它以漂亮的视图显示数据。

          foreach ($data as $row){
              echo '<pre>';
              print_r($row);
              echo '</pre>';
          }
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2016-02-18
            • 2018-04-04
            • 2016-06-24
            • 2016-09-08
            • 2020-03-17
            • 2017-11-13
            • 2015-02-20
            • 1970-01-01
            相关资源
            最近更新 更多