在Laravel Blade中动态访问阵列

时间:2014-02-06 15:01:48

标签: php laravel-4 blade

我在我的一个视图中动态访问数组时遇到问题。

我首先将我需要轻松访问的值组织成$entityClubStats,如下所示:

$entityClubStats = [];
foreach($entity->clubs as $club) {
    $entityClubStats[$club->name] = [
        'days_to_pay' => $club->pivot->days_to_pay,
        // ...
    ];
}

然后我迭代俱乐部的主列表,目的是填写相关值(如果存在):

@foreach (Club::isIncludedInStats()->get() as $club)
<div>
    <label>Name</label>
    <input type="text" value="{{$club->name}}" readonly />
</div>
<div>
    <label>Days to Pay</label>
    <input type="text" name="club_days_to_pay" value="{{$entityClubStats[$club->name]['days_to_pay']}}" />
</div>
<!-- ... -->
@endforeach

问题在于,虽然我尝试使用{{double_brackets}}<?= standard_syntax ?>,但此细分会产生白屏:

$entityClubStats[$club->name]['days_to_pay'];

然而,当我简单地对$club->name进行硬编码时, 工作:

$entityClubStats['AAA']['days_to_pay'];

为什么?

1 个答案:

答案 0 :(得分:1)

当它在$club->name中没有看到$entityClubStats时,它就会死亡。卫生署!