我正在尝试将包含关联数组数组的关联数组传递给laravel 5.2中的partial:
@include('admin.partials.context-menu', [
'items' => [
['test' => 'test']
],
'icon' => 'more_vert'
])
并尝试访问数组中的数组项:
<ul class="context-menu">
@foreach($items as $item)
<li class="context-menu-item">
{{ $item['test'] }}
</li>
@endforeach
</ul>
然而,当我尝试这样做时,我收到错误非法字符串偏移'test'。
到目前为止我尝试过的事情: 使用索引数组'items' - 工作,但开发非常不直观 传递对象而不是关联数组 - 意外行为,表示它是typeOf时的对象,但是当访问值时,表示它不是对象。
我可以在部分内容var_dump并且所有值都符合预期,但只有当我尝试通过刀片访问它们的值时才会出现问题 如在
{{ $item['test'] }}
感谢您的帮助:)
答案 0 :(得分:0)
我只能想到你错过了其中一个项目的钥匙。
例如,我可以使用以下代码触发相同的错误。
<?php
$array = [
'items' => [
['test' => 'test'],
['key' => 'test2']
]
];
foreach ($array['items'] as $item) {
var_dump($item['test']);
}
尝试
@foreach ($items as $key => $value) // yes this works in blade
{{ $item[$key] }}
@endforeach