Weil PHP einfach nur... ach lies selbst: http://me.veekun.com/blog/2012/04/09/php-a-fractal-of-bad-design/
Wenn du die Chance hast, verwende eine vernünftige Sprache, bei der nicht solche komischen Typkonvertierungen durchführt. Bei Zeichenketten würde man erwarten, dass der Ausdruck ("01" == "1") FALSE ergibt und nicht TRUE.
Ansichtssache - das ist eine der Designeigenheiten
Ich würde es Designfehler nennen. Aber das ist natürlich auch Ansichtssache. ;)
die es bei PHP zu beachten gibt - und in anderen Sprachen wieder nicht. Nur weil viele anderen Sprachen eine strengere Typbehandlung haben, ist PHP deshalb nicht schlecht oder macht es falsch.
Das hat nichts mit strengerer Typbehandlung zu tun. Javascript ist in dieser Hinsicht nicht besser und beinhaltet trotzdem nicht solche Designfehler wie PHP (dafür aber genug andere...).