Laravel foreach变量循环范围

May*_*hal 8 php foreach laravel laravel-4 laravel-5

当我使用Laravel刀片文件foreach循环时,变量可以在foreach循环之后访问,而变量的范围应该只在循环内

@foreach($user->referral as $ref)
  <tr>
    <td>{{ $ref->referral_amount }}</td>
    <td>{{ $ref->status }}</td>
  </tr>
@endforeach
Run Code Online (Sandbox Code Playgroud)

$ ref:这个变量可以在@endforeach之后的endforeach循环之外访问

Ale*_*nin 6

foreach文档:

警告

$value即使在foreach循环之后,a 和最后一个数组元素的引用仍然存在.建议将其销毁unset()

因此,如果要销毁引用,请执行以下操作:

<?php unset($ref); ?>
Run Code Online (Sandbox Code Playgroud)

要么:

@php unset($ref); @endphp
Run Code Online (Sandbox Code Playgroud)