phpbar.de logo

Mailinglisten-Archive

Re[2]: [php] if oder was....

Re[2]: [php] if oder was....

Alexander Wagner php_(at)_phpcenter.de
Sun, 25 Nov 2001 23:48:49 +0100


Am Sonntag 25 November 2001 23:42 schrieben Sie:
> ----- Original Message -----
> From: Alexander Wagner <wagner_(at)_globalpark.de>
> To: php_(at)_phpcenter.de <php_(at)_phpcenter.de>
> Sent: Sonntag, 25. November 2001 23:35
> Subject: [php] if oder was....
>
> > Am Sonntag 25 November 2001 23:30 schrieben Sie:
> >> Moin!
> >>
> >> Ich versteh es nicht:
> >>
> >> Wenn ich $dCount auf 07 setze, dann wird "Bezeichnung 7" ausgegeben.
> >> Nur wenn ich $dCount auf 08 setze wird nichts ausgegeben. Ich versteh
> >> die Welt nicht...
> >> Weiss jemand woran das liegt?
> >
> > Zahlen mit führender 0 werden als Oktalzahlen interpretiert, und 08 ist
> > keine gültige Oktalzahl. Setz einfach überall "" um die Zahlen, dann
> > werden diese als Zeichenketten statt als Zahlen interpretiert und alles
> > ist gut.
> >
> > Gesundheit
> > Wagner
>
> aber ich hab $dCount doch schon bei der Deklaration in "" gesetzt, damit
> diese als Strings(?) definiert werden. Warum nimmt php dann in der if
> Abfrage nochmal ne Typprüfung vor?

Wieso Prüfung?
Also, da wird geprüft ob
"08" == 08  //links der Inhalt der Variable
Das ist gleich
"08" == 0
oder
"08" == false
oder so, da 08 keine gültige Oktalzahl ist. Du vergleichst zwei Dinge mit 
verschiedenen Typen, damit die verglichen werden können, muss PHP intern die 
Typen so umwandeln, dass sie den gleichen Typ haben. Hier wird die Zahl zu 
einer Zeichenkette umgewandelt, nehme ich an, und "08" ist nicht gleich "" 
oder "0" oder nach was die 08 umgewandelt wird.

Gesundheit
Wagner

-- 
"He's dead Jim" "No I'm not! I'm feeling much bet-" ZZZAP!


php::bar PHP Wiki   -   Listenarchive