如何在laravel刀片上设置for-loop的值

Fan*_*Fan 9 php select date laravel

<select id="year" name="year" class="form-control ">
    {{ $last= date('Y')-120 }}
    {{ $now = date('Y') }}

      @for ($i ={{ $now }}; $i <= {{ $last }}; $i--)
         <option value="{{ $i }}">{{ $i }}</option>
      @endfor               
</select>
Run Code Online (Sandbox Code Playgroud)

我得到了错误消息Parse error: syntax error, unexpected '<'
它看起来像变量无法读取.
如何设置for循环中的值?

小智 18

基本上{{ $last= date('Y')-120 }}在这部分中,您显示的是值,但您需要指定值.所以像这样分配:

<?php $last= date('Y')-120; ?>
Run Code Online (Sandbox Code Playgroud)

同样的事情也适用于for循环.只需比较值.不要把它放在刀片语法中.

<select id="year" name="year" class="form-control ">
    <?php $last= date('Y')-120; ?>
    <?php $now = date('Y'); ?>

    @for ($i = $now; $i <= $last; $i--)
        <option value="{{ $i }}">{{ $i }}</option>
    @endfor
</select>
Run Code Online (Sandbox Code Playgroud)


Akh*_*ngh 7

using@for ($i = $now; $i <= $last; $i--)对我不起作用,所以我不得不使用递增 count

<div class="form-group">
  <label for="task" class="col-sm-1 control-label">Text</label>
     @for ($i = 0; $i < $count; $i++)
       <div class="col-sm-12">
           <input type="text" name="text[{{ $i }}]" id="text[{{ $i }}]" class="form-control">
      </div>
     @endfor
</div>
Run Code Online (Sandbox Code Playgroud)