Tom: 001 = 1 und password_hash

Beitrag lesen

Hello,

$a === $b Gibt TRUE zurück wenn $a gleich $b ist und beide vom gleichen Typ sind (eingeführt in PHP 4).
Müsste dann ebenfalls true ergeben.

Nein, eben nicht, denn die linke Zeichenkette ist ja nicht identisch der rechten!
Und der Pre-Parser fasst die "Zahlen" nicht an, um ggf. eine Oktalzahl daraus dzu machen, da er sie ja bereits als Zeichenketten erkannt hat. Erst durch den Operator '==' wird der Mechanismus der Typumwandlung angestoßen. Die Funktion strlen() enthält aber keinen Operator. Darum führt die auch keine Typumwandlung durch!

Alle Klarheiten beseitigt?

Wenn PHP in (Turbo-)Pascal geschrieben wäre und nicht in C, dann wäre alles anders :-)

Dort gibt es keine Überladung und außerdem ist es ein typenstrenge Sprache. Man darf mit Mühe und Not mal gerade explizites Typecasting betreiben.

Liebe Grüße aus dem schönen Oberharz

Tom vom Berg

--
 ☻_
/▌
/ \ Nur selber lernen macht schlau
http://bikers-lodge.com