2017-02-10 4 views
0

I eine assoziativen Array passieren versuchen einen Array von assoziativen Arrays auf den einem Teil in Laravel 5.2 enthält:Laravel - Passing Array von assoziativer Arrays zu einem partiellen

 @include('admin.partials.context-menu', [ 
      'items' => [ 
       ['test' => 'test'] 
      ], 
      'icon' => 'more_vert' 
     ]) 

und zu versuchen, innerhalb des Arrays Element zuzugreifen das Array:

Allerdings bekomme ich einen Fehler ungültige Zeichenfolge Offset 'Test', wie ich es versuche.

Dinge, die ich bisher versucht habe: indiziertes Array ‚Elemente‘ Mit - funktioniert, aber sehr wenig intuitiv mit Passing-Objekt anstelle von assoziativen Arrays zu entwickeln - ein unerwartetes Verhalten, sagt, es ist ein Objekt, wenn typeOf, aber beim Zugriff auf ein Wert, sagt, es ist kein Objekt.

kann ich var_dump Dinge im Teil und alle Werte sind wie erwartet, aber das Problem entsteht erst, wenn ich versuche, ihre Werte über Blade zugreifen wie in

{{ $item['test'] }} 

Vielen Dank für Ihre Hilfe :)

+0

Ist dies der gesamte Code zu tun. z.B. existiert der Schlüssel 'test' für jedes' $ item'? – Luke

Antwort

0

Alles, was ich denken kann ist, dass Sie den Schlüssel auf einem der Elemente vermissen.

Zum Beispiel kann ich den gleichen Fehler mit dem folgenden Code auslösen.

<?php 

$array = [ 
    'items' => [ 
     ['test' => 'test'], 
     ['key' => 'test2'] 
    ] 
]; 

foreach ($array['items'] as $item) { 
    var_dump($item['test']); 
} 

Versuchen

@foreach ($items as $key => $value) // yes this works in blade 
    {{ $item[$key] }} 
@endforeach