【问题标题】:Laravel working with arrays and looping through associative arraysLaravel 使用数组并循环关联数组
【发布时间】:2019-01-22 04:43:51
【问题描述】:

考虑我有以下数组(从我的控制器传递给视图):

'first' => [

    '1' => [
        'title' => 'First Div',
        'fields' => [
            'name', 'select'
        ],
    ],

     'divider',

    '2' => [
        'title' => 'Second Div',
        'fields' => [
            'address'
        ],
    ],

我转储时在浏览器中看起来像这样:

array (size=2)
  1 => 
    array (size=2)
      'title' => string 'First Div' (length=9)
      'fields' => 
        array (size=2)
          0 => string 'name' (length=4)
          1 => string 'select' (length=6)
  2 => 
    array (size=2)
      'title' => string 'Second Div' (length=10)
      'fields' => 
        array (size=1)
          0 => string 'address' (length=7)

我想要做的是以下。我想遍历所有数组,然后显示一个带有 title 的 div,并在该 div 中循环遍历每个数组的所有 fields

现在我只专注于遍历数组并显示正确的数据,所以还没有任何 div。所以是这样的:

@foreach($first as $key => $value)

    // Unsure what to do here

@endforeach

我已经尝试了很多东西(只是在尝试转储或回显数据),我什至无法弄清楚如何显示 title,更不用说遍历所有 fields 值了。

无论哪种方式,我的最终目标是根据从控制器传递的内容创建以下动态视图:

【问题讨论】:

  • 好吧$value 也将是一个数组,所以添加另一个 foreach 循环来处理它

标签: php arrays laravel loops


【解决方案1】:

要在刀片中回显一个值,您可以将变量包装在{{ }} 中。

你应该能够按照以下方式做一些事情:

@foreach($first as $key => $value)

    <div>
        <h2>{{ $value['title'] }}</h2>

        @foreach($value['fields'] as $field)

            {{ $field }} <br>

        @endforeach
    </div>

@endforeach

请查看documentation了解更多信息

【讨论】:

  • 谢谢,我知道括号,老实说我已经尝试了你在这里描述的内容,但我只得到了错误。但这以某种方式神奇地起作用。哈哈,非常感谢,我要学习很多东西:)
猜你喜欢
  • 1970-01-01
  • 2019-03-07
  • 1970-01-01
  • 2013-01-12
  • 2014-02-16
  • 1970-01-01
  • 2020-10-19
  • 2015-01-07
  • 2023-03-26
相关资源
最近更新 更多