Der Martin: Umgang mit String und int

Beitrag lesen

Hallo,

for ($i = 0; $i < count($resultlist); $i++)

$zeile = $resultlist[$i]+1;

  
was für einen Typ haben die Elemente von resultlist[]? Nach deiner Beschreibung müsste man vermuten, es seien Strings.  
  

> Hätte ich statt $zeile $resultlist[$i]+1 eingefügt, wäre die Ausgabe pro Zeile immer 1 gewesen.  
  
Ups. Dann müsste $resultlist[$i] durchgehend ein Leerstring sein. Das hört sich nicht wirklich schlüssig an.  
  

> Ich versuchte Lösungen wie ((int)$resultlist[$i])++, half aber nichts.  
  
Das hätte es nach meinem Verständnis eigentlich bringen sollen ...  
  

> Seltsamerweise lieferte ++$resultlist[$i] zwar die richtige Zeilennummer, d.h. hier wurde plötzlich ein int erkannt, jedoch bedeutet das natürlich, dass die Variable postinkrementiert wird  
  
Nein, prä-incrementiert. Post-increment (erst lesen, dann incrementieren) wäre es, wenn der Operator ++ hinter dem Operanden steht.  
  
Ich mache in so einem Fall -also wenn ich eine numerische Interpretation erzwingen will- immer eine Operation, die nur für numerische Werte definiert ist. Beispielsweise eine Multiplikation mit 1:  
  

>       $zeile = $resultlist[$i]\*1 + 1;  
  
That does the trick.  
  
Ciao,  
 Martin  

-- 
Die letzten Worte des stotternden Beifahrers:  
Frei... frei... frei... freilich kommt da was!!