Mailinglisten-Archive |
Hallo Johann-Peter,
> > $res = 1;
> > $res == "wrongType" liefert neuerdings true. Was mache ich dann
> > bei Stringvergleichen?
>
> Hmm, seltsam, kann ich nicht nachvollziehen, bei mir
> ist das false.
>
> Eine sichere Variante zum Stringvergleich gibt es
> aber: mit "===" laesst sich prüfen, ob Wert und
> Typ übereinstimmen.
das ist mir neu. Aus der FAQ, 22.4 Was ist neu in PHP4?:
Boolean
Die Schlüsselworte true und false sind nun Teil
der Sprache und es gibt einen Datentyp boolean.
Vergleiche werden nun durchgeführt, indem ein
fremder Datentyp in Boolean konvertiert wird und
dann verglichen wird: In PHP4/Zend ist das
Konstrukt 5 == true eine wahre Aussage, weil
(boolean) 5 in true konvertiert wird, bevor
verglichen wird.
Was passiert nun, wenn der eine Datentyp integer ist und der
andere string, wie in obigem Beispiel? Werden beide nach boolean
konvertiert? Dann ist klar, daß da true rauskommt.
--
Mit freundlichem Gruss
Dr. Werner Stuerenburg
_________________________________________________
ISIS Verlag, Teut 3, D-32683 Barntrup-Alverdissen
Tel 0(049) 5224-997 407 · Fax 0(049) 5224-997 409
http://pferdezeitung.de http://art-quarter.com
php::bar PHP Wiki - Listenarchive