2017-04-04 4 views
1

Ich weise eine Variable einem Array zu, das ich in der Blade-Datei deklariert habe. Es gibt einen Fehler vonZuweisen einer Variablen zu einem Array (Fehler)

ErrorException in 4c73f52d03e3e1331e7b4c0289cafb82dfc22253.php line 127: 
Undefined offset: 0 (View: 
/var/www/myteam/resources/views/servicedetails.blade.php) 

Unten ist mein Code:

<?php $i = 0 ?> 
@foreach($var as $v) 
<?php $ary = array(); ?> 
    <tr> 
     <td name="attrname"><b>{{ $v->service_attribute_name }}</b><br><br></td> 
     <td>: <a><input contenteditable="true" name="attrvalue" value="{{ $v->service_attribute_value}}"></a> <br></td> 
     <?php $v->service_attribute_value = $ary[$i] ?> 
     <?php $i++ ?> 
    </tr> 
@endforeach 

Ich konnte nicht den Fehler verstehen. Vielen Dank!

+0

Declare Array '$ ary' vor foreach-Schleife. ändern Sie diese Zeile ' service_attribute_value = $ ary [$ i]; ?> ' mit diesem ' service_attribute_value; ?> ' – Gaurav

Antwort

0

Vor allem wenn $ary = array() innerhalb der foreach Schleife deklariert wird, fügen Sie alle Werte, die Sie sich von der nächsten Iteration der Schleife überschrieben werden, so das Array werden Sie nur mit den Werten der letzten Iteration der liefern Schleife.

Zweitens denke ich, Ihr Problem mit dieser Linie ist:

<?php $v->service_attribute_value = $ary[$i] ?> 

Wenn Sie versuchen, den Array-Wert einzustellen, müssen Sie die Reihenfolge dieser Aussage invertieren:

<?php $ary[$i] = $v->service_attribute_value ?> 

Hoffe das ist hilfreich!

0

Der Code sollte so aussehen:

<?php 
    $i = 0; 
    $ary = array(); 
?> 
@foreach($var as $v) 
    <tr> 
     <td name="attrname"><b>{{ $v->service_attribute_name }}</b><br><br></td> 
     <td>: <a><input contenteditable="true" name="attrvalue" value="{{ $v->service_attribute_value}}"></a> <br></td> 
     <?php 
      $ary[$i] = $v->service_attribute_value; 
      $i++; 
     ?> 
    </tr> 
@endforeach 
Verwandte Themen