2016-06-30 2 views
1

Also arbeite ich mit Laravel und ich versuche, den ganzen Teil eines Objekts mit Ausnahme der ersten Sache zurückzugeben. Ich habe versucht array_slice() wie oben gezeigt, aber es bricht die Seite.Wie kann man eine foreach auf ein Objekt in Laravel begrenzen?

{{gettype($formulas)}} --> object 

@foreach(array_slice($formulas->toArray(), 1, 5) as $f) 
    <label>{{$f->name}}</label> 
@endforeach 

Also gibt es eine Möglichkeit, das gleiche zu tun, aber mit einem Objekt?

+0

Dieses sieht nicht wie es etwas zu zerbrechen sollte, sieht es aus wie die Syntax korrekt ist. Wenn Sie alle _but_ das erste Element möchten, können Sie den 3. Parameter in Ihrem 'array_splice'-Aufruf übrigens weglassen. Schauen Sie sich Ihre 'storage/logs/laravel.log' an und sehen Sie, ob Ihr View-Parser Fehler gemeldet hat. – Padarom

Antwort

1

Vielleicht funktioniert das, ich habe es nicht versucht, aber vielleicht wird es funktionieren.

<?php $count = 0; ?> 
@foreach ($formulas->toArray() as $f) 
    <?php if(!$count == 0){ continue; } ?> 
    // Your code here   
    <?php $count++; ?> 
@endforeach 
+0

Die Sache ist, ich könnte das tun, wenn ich nur zu begrenzen, aber ich möchte zuerst auch vermeiden; –

+0

Sie wissen, was, nur bearbeiten Sie Ihre Antwort mit einem 'continue' hinzufügen und ich werde es akzeptieren –

+0

Ich habe meine Antwort aktualisiert bitte sagen Sie mir, es funktioniert oder nicht? – Bhavin

0

Dies könnte Ihnen helfen:

$limit = 5; 
@foreach($formulas as $index => $f) 
    @if($index >= $limit) 
     @break 
    @endif 
    @if (! $index == 0) 
     <label>{{$f->name}}</label> 
    @endif 
@endforeach 
Verwandte Themen