【发布时间】:2018-05-26 03:43:54
【问题描述】:
我在 Laravel 的 Blade 模板中做了很多循环,有时我必须记住一些条件,比如 $found 或 $needToSave,诸如此类。
这是一个小例子:
<?php $found = false; ?>
@foreach ($users as $user)
@foreach ($user->posts as $post)
@if ($post->something == "value")
<?php $found = true; ?>
@endif
@if ($loop->parent->last)
@if ($found)
I really found something! Do something special!
@endif
@endif
@endforeach
@endforeach
现在,<?php $found = false|true ?> 部分是否有更好的方法?
对我来说,这似乎不干净,我正在寻找一个更清洁的解决方案,它与模板引擎一起发挥作用。我知道@php,但这对我来说似乎很丑陋。有什么可以在引擎中分配本地变量吗?
干杯
【问题讨论】:
-
你到底想做什么?您想知道是否有任何用户有任何具有特定价值的帖子吗?如果是这样,您应该考虑在控制器中执行此操作,甚至从中进行数据库查询。
-
嗯,是的,这也是我想到的
{{ $found = false }},但我认为它会打印出一些东西,不是吗?如果没有,那就是我要找的! -
你是对的!对不起!它只是返回变量,当我测试这个理论时我什至没有检查,因为我 dd()'ed 变量。
标签: php laravel loops templates blade