mike: foreach Abbruchkriterium

Die folgenden Zeilen finde ich genial kompakt aber leider bekomme ich beim letzten Durchgang im inneren foreach folgenden Fehler:

Warning: Invalid argument supplied for foreach() in ....

  
 // Alle Daten in einer Tabelle ausgeben  
 foreach ($solds as $outputline) {  
 print ("<tr>\n");  
 foreach ($outputline as $zellenwert) {  
  print ("<td>$zellenwert</td>\n");  
 }  
 print ("</tr>\n");  
 }  

Der HTML output:

  
<tr>  
<td>kevin</td>  
<td>89</td>  
<td>Blubber</td>  
<td>2008-11-13</td>  
</tr>  
<tr>  
<br />  
<b>Warning</b>:  Invalid argument supplied for foreach() in...<br />  
</tr>  

Der HTML output zeigt die letzte Zeile im File und dann den Fehlerhaften Durchgang.
Warum macht foreach weiter obschon das array zu ende ist? Wie kann ich foreach dazu bringen nach der letzten Zeile aufzuhören?

Gruss mike

  1. Moin!

    Die folgenden Zeilen finde ich genial kompakt aber leider bekomme ich beim letzten Durchgang im inneren foreach folgenden Fehler:

    Warning: Invalid argument supplied for foreach() in ....

    Lass dir mal die Arraystruktur ausgeben:
    echo "<pre>"; var_dump($solds);echo "</pre>";

    So, wie die Fehlermeldung mit dem Code zusammenhängt, dürfte das letzte Element des Arrays $solds kein Array sein, sondern irgendein anderer Wert, der dann vom inneren foreach nicht verwertet werden kann.

    - Sven Rautenberg

  2. Hellihello

    » Warum macht foreach weiter obschon das array zu ende ist? Wie kann ich foreach dazu bringen nach der letzten Zeile aufzuhören?

    if (is_array($outputline))

    Dank und Gruß,

    frankx

    --
    tryin to multitain  - Globus = Planet != Welt