Der Martin: Bewerbungsgespräch

Beitrag lesen

Hallo,

("x" == 0)
Weil PHP probiert "x" in einen Integer umzuwandeln. Dies schlägt fehl und somit gibt PHP 0 zurück und somit wird der Term zu 0 == 0 und somit True.
ok, war mir nicht klar. Das ist das tückische an PHPs Ententyping.
Das ist wirklich _sehr_ tückisch

finde ich eigentlich nicht. Normalerweise sollten sich einem Programmierer bei der nochmals zitierten Vergleichsoperation sämtliche Nackenhaare aufstellen, weil man hier einen String mit einem Integerwert vergleicht. Das ist schon mal ganz "böse".
Tückisch finde ich nur, dass diese Operation ohne Fehler durchgeht. IMO sollte das *mindestens* eine Notice schmeißen, eigentlich sogar einen Fehler.

Ich finde das PHP-typecasting zu 0 ziemlich unschön und  nicht sehr logisch.

Ich finde es grundsätzlich unschön, wenn eine Programmiersprache so lax mit unterschiedlichen Datentypen umgeht, da nehmen sich Javascript und PHP nichts.

Glücklicherweise ist es eine (tw. überflüssige, aber hier unbewußt hilfreiche) Angewohnheit von mir, fast immer strict mit === zu vergleichen.

Gar keine schlechte Idee.

Ciao,
 Martin

--
Eine Nonne kommt in den Himmel. An der Pforte fragt Petrus: "Wer bist du?" - "Ich bin die Braut Jesu." Petrus stutzt einen Moment, ruft dann nach hinten: "He Freunde, habt ihr schon gehört? Der Juniorchef will heiraten!"
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(