Hallo norbertle,
die Frage ist: wieso sind sie überhaupt da? Wenn da 0053088
steht, dann enthält das Array mutmaßlich keine Zahl, sondern eine Zeichenkette.
PHP verfügt über einen Typenjongleur (kein Scherz, steht so im Handbuch: Type Juggling), der Datentypen so aneinander anpasst, dass der Programmcode möglichst Sinn ergibt.
if ("0053088" > 50000)
kann man auf zwei Arten deuten: „Vergleiche die Zahl 0053088 mit der Zahl 50000“, oder „Vergleiche die Zeichenkette 0053088 mit der Zeichenkette 50000“. Bei einem Zahlenvergleich ist das Ergebnis TRUE, bei einem Zeichenkettenvergleich wäre es FALSE (weil Zeichenketten Zeichen für Zeichen von links nach rechts verglichen werden).
Der Type Juggler entscheidet sich zu Gunsten der Zahl, d.h. deine Bedingung ist TRUE und es wird subtrahiert.
Das Ergebnis der Subtraktion ist 3088, und zwar die ZAHL 3088, nicht die Zeichenkette.
Und jetzt wäre an der Zeit, dass Du uns sagst, was denn bei Dir passiert, womit du unzufrieden bist, und was Du denn gerne als Ergebnis hättest. Und zwar ganz konkret.
Rolf
sumpsi - posui - obstruxi