【问题标题】:Laravel looping through array in bladeLaravel 在刀片中循环遍历数组
【发布时间】:2016-04-14 10:07:46
【问题描述】:

我有以下数组:

$days = [
    ['dow' => 1, 'day' => 'Monday'],
    ['dow' => 2, 'day' => 'Tuesday'],
    ['dow' => 3, 'day' => 'Wednesday'],
    ['dow' => 4, 'day' => 'Thursday'],
    ['dow' => 5, 'day' => 'Friday'],
    ['dow' => 6, 'day' => 'Saturday'],
    ['dow' => 7, 'day' => 'Sunday'],
];

我试图在我的刀片模板中循环遍历它,如下所示:

 @foreach ($days as $day)
       <label>{{$day['day']}}</label>
       {!! Form::text('day_of_wk[$day['dow']].start_time', null, ['class' => 'form-control'])!!}
  @endforeach

但我收到错误:syntax error, unexpected 'dow' (T_STRING)

如何在我的 day_of_wk[] 输入数组中添加 $day['dow'] 值?

【问题讨论】:

  • 看看他们周围的引号。存在语法错误。删除单引号或用双引号替换它们。
  • 已经试过了,还是不行。我认为您在使用 laravel 集体时不能以这种方式添加变量,除非有人可以向我展示其他方式。
  • 当我删除单引号时,我只得到 $day[dow] 而不是实际值
  • 通过执行以下操作进行了修复'day_of_wk['. $day['dow'] . '].start_time'
  • 只有在使用双引号时才能在php字符串中嵌入变量。使用单引号,您需要将其连接起来,如上所示。

标签: php arrays laravel-5.1 laravel-blade


【解决方案1】:
  @foreach ($days as $day)
       <label>{{$day['day']}}</label>
       {!! Form::text('day_of_wk['.$day['dow'].'].start_time', null, ['class' => 'form-control'])!!}
  @endforeach

或

@foreach ($days as $day)
           <label>{{$day['day']}}</label>
           {!! Form::text("day_of_wk[{$day['dow']}].start_time", null, ['class' => 'form-control'])!!}
      @endforeach

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-10-01
    • 2016-06-29
    • 2017-08-20
    • 1970-01-01
    • 2017-09-26
    • 1970-01-01
    • 2015-11-18
    • 1970-01-01
    相关资源
    最近更新 更多